2020_09_07:JAVA流程控制
阿新 • • 發佈:2020-09-07
JAVA流程控制
Scanner物件
可以通過Scanner類來獲取使用者的輸入
基本語法:
Scanenr s = new Scanner(System.in);
//通過Scanner類的next()和nextLine(方法獲取輸入的字串),在讀取前我們一般需要使用hasNext()與hasNextLine()判斷是否還有輸入的資料
public class Demo01 { public static void main(String[] args) { //建立一個掃描器物件,用於接收使用者資料 Scanner scanner = new Scanner(System.in); System.out.println("使用next方法接收:"); //判斷使用者有沒有輸入字串 if(scanner.hasNext()){ //接收使用者的輸入 String str = scanner.next();//程式會等待使用者輸入完畢 System.out.println("輸入的內容為:" + str); } //凡是屬於IO流的類如果不關閉會一直佔用資源,用完關掉 scanner.close(); } } public class Demo02 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("使用hasNextLine()方法接收:"); if (scanner.hasNextLine()) { String str = scanner.nextLine(); System.out.println("輸出的內容為:" + str); } } }
next():
- 一定要讀取到有效字元後才可以結束輸入
- 對輸入有效字元之前遇到的空白,next()方法會自動將其去掉
- 只對輸入有效字元之後才將其後面輸入的空白作為分隔符或者結束符
- next()不能得到帶有空格的字串
nextLine():
- 以Enter為結束符,也就是說nextLine()方法返回的是輸入回車之前的所有字元.
- 可以獲得空白
順序結構
- JAVA的基本結構就是i順序結構,除非特別指明,否則就按照順序一句一句執行.
- 順序結構是最簡單的演算法結構
- 是任何一個演算法都離不開的一種基本演算法結構
public static void main(String[] args) { System.out.println("Hellow1"); System.out.println("Hellow2"); System.out.println("Hellow3"); System.out.println("Hellow4"); System.out.println("Hellow5"); }
選擇結構
1.if選擇結構
- if單選擇結構
我們很多時候需要判斷一個東西是否可行,然後我們再去執行,這樣一個過程用if語句來表示
語法:
if(布林表示式){
//如果布林表示式為true將執行的語句
}
boolean a = false
if(a){
System.out.print("嘿嘿嘿")
}
- if雙選擇結構
一個if不夠用 就需要一個雙選擇結構 就有了if-else結構
語法:
if(布林表示式){
//如果布林表示式的值為true
}else{
//如果布林表示式的值為false
}
- if多選擇結構
就是if雙選擇結構都不夠用 需要一個多選擇結構來處理這類問題
語法:
if(布林表示式1){
//如果布林表示式 1 的值為true執行的程式碼
}else if(布林表示式2){
//如果布林表示式為2的值為true執行的程式碼
}else if(布林表示式3){
//如果布林表示式3的值為false執行的程式碼
}else{
//如果以上布林表示式都不為true執行的程式碼
}
- 巢狀if結構
if-else裡面有個if-else
if(布林表示式1){
//如果布林表示式1的值為true執行程式碼
if(布林表示式2){
//如果布林表示式2的值為true執行程式碼
}
}
Switch選擇結構
-
多選擇結構還有一個實現方式就是switch
-
switch case語句判斷一個變數與一系列值中的某個值是否相等,每個值成為一個分支
-
switch語句中的變數型別可以是:
- Byte , short , int或者 char
- java SE7 開始 (switch開始支援string)
- case標籤必須為字串或者字串常量
switch(expression){ case value: //語句 break;可選 case value: //語句 break;可選 default://可選 //語句 }