Java用戶交互scanner及運(yùn)算結(jié)構(gòu)代碼詳解
用戶交互Scanner
通過Scanner類的 next() 與 nextLine() 方法獲取輸入的字符串,在讀取前我們一般需要使用hasNext() 與 hasNextLine() 判斷是否還有輸入的數(shù)據(jù)。
next() 與 nextLine()
next():
1、一定要讀取到有效字符后才可以結(jié)束輸入。
2、 對(duì)輸入有效字符之前遇到的空白,next() 方法會(huì)自動(dòng)將其去掉。
3、只有輸入有效字符后才將其后面輸入的空白作為分隔符或者結(jié)束符。
4、 next() 不能得到帶有空格的字符串。
Scanner scanner = new Scanner(System.in);
System.out.println("使用next方法接收:");
//判斷用戶有沒有輸入字符串
if(scanner.hasNext()){
//使用next方法接收
String str=scanner.next();
System.out.println("輸出內(nèi)容為:"+str);
}
//凡是屬于IO流的類如果不關(guān)閉會(huì)一直占用資源,良好習(xí)慣用完就關(guān)!
scanner.close();
1、以Enter為結(jié)束符,也就是說nextLine()方法返回的是輸入回車之前的所有字符。
2、可以獲得空白。
Scanner scanner = new Scanner(System.in);
System.out.println("使用nextLine方法接收:");
//判斷用戶有沒有輸入字符串
if(scanner.hasNextLine()){
//使用nextLine方法接收
String str = scanner.nextLine();
System.out.println("輸出內(nèi)容為:"+str);
}
//凡是屬于IO流的類如果不關(guān)閉會(huì)一直占用資源,良好習(xí)慣用完就關(guān)!
scanner.close();
順序與循環(huán)結(jié)構(gòu)
- 順序結(jié)構(gòu)
- 選擇結(jié)構(gòu)
- switch多選擇結(jié)構(gòu)
switch語句中的變量類型可以是:byte、short、int、或char
從JavaSE7開始,支持String類型,同時(shí)case標(biāo)簽必須為字符串變量或字面量
循環(huán)結(jié)構(gòu)
- while 循環(huán)
- do while 循環(huán)
While和do-While的區(qū)別:
while先判斷后執(zhí)行。do-while是先執(zhí)行后判斷!
Do...while總是保證循環(huán)體會(huì)被至少執(zhí)行一次! 這是他們的主要差別。
for循環(huán)
for循環(huán)語句是支持迭代的一種通用結(jié)構(gòu),是最有效、最靈活的循環(huán)結(jié)構(gòu)。
for循環(huán)執(zhí)行次數(shù)是在執(zhí)行前就確定的。
增強(qiáng)for循環(huán)
for(聲明語句 : 表達(dá)式)
{
//代碼句子
}
int[] numbers={10,20,30,40,50};
for(int x:numbers){
System.out.println(x);
}
聲明語句:聲明新的局部變量,該變量的類型必須和數(shù)組元素的類型匹配。其作用域限定在循環(huán)語句塊,其值與此時(shí)數(shù)組元素的值相等。
表達(dá)式:表達(dá)式是要訪問的數(shù)組名,或者是返回值為數(shù)組的方法。
break 和 continue
break在任何循環(huán)語句的主體部分,均可用break控制循環(huán)的流程。break用于強(qiáng)行退出循環(huán),不執(zhí)行循環(huán)中剩余的語句。(break語句也在switch語句中使用)
continue語句用在循環(huán)語句體中,用于終止某次循環(huán)過程,即跳過循環(huán)體中尚未執(zhí)行的語句,接著進(jìn)行下一次是否執(zhí)行循環(huán)的判定。
應(yīng)用:打印三角形和 debug
public static void main(String[] args) {
for (int i = 1; i <= 5; i++) {
for (int j=5;j>=i;j--){
System.out.print(" ");//打印空白區(qū)域
}
for (int j=1;j<=i;j++){
System.out.print("*");//先打印左邊半個(gè)三角形
}
for (int j=1;j<i;j++){
System.out.print("*");//打印右邊半個(gè),算是補(bǔ)齊吧!
}
System.out.println();
}
}
關(guān)于debug設(shè)置斷點(diǎn):點(diǎn)擊代碼左側(cè)區(qū)域,點(diǎn)擊“瓢蟲”開始debug,可以看到每個(gè)步驟的情況?。?!
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
最新IntelliJ?IDEA?2022配置?Tomcat?8.5?的詳細(xì)步驟演示
這篇文章主要介紹了IntelliJ?IDEA?2022?詳細(xì)配置?Tomcat?8.5?步驟演示,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-08-08
身份證號(hào)碼驗(yàn)證算法深入研究和Java實(shí)現(xiàn)
這篇文章主要介紹了身份證號(hào)碼驗(yàn)證算法深入研究和Java實(shí)現(xiàn),本文講解了18身份證號(hào)碼的結(jié)構(gòu)、根據(jù)17位數(shù)字本體碼獲取最后一位校驗(yàn)碼程序?qū)嵗葍?nèi)容,需要的朋友可以參考下2015-06-06
基于maven的springboot的"過時(shí)"用法解析
這篇文章主要為大家介紹了基于maven的springboot"過時(shí)"用法示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-09-09

