精華筆記: 1. Scanner接收用戶輸入的數據:共3步 不需要理解,先記住它,面向對象第五天才能理解 2. 分支結構: - if...else if結構:多條路 - switch...case結構:多條路 - 優點:效率高、結構清晰 - 缺點:只能對整數判斷相等 - break:跳出switch ...
精華筆記:
1. Scanner接收用戶輸入的數據:共3步-----------不需要理解,先記住它,面向對象第五天才能理解
2. 分支結構:
- if...else if結構:多條路
- switch...case結構:多條路
- 優點:效率高、結構清晰
- 缺點:只能對整數判斷相等
- break:跳出switch
> 面試題:switch後數據的類型可以為:byte,short,char,int,String,枚舉類型
3. 迴圈:反覆多次執行一段相同或相似的代碼
4. 迴圈三要素:-----------------------下午詳細講
- 迴圈變數的初始化
- 迴圈的條件(以迴圈變數為基礎)
- 迴圈變數的改變(向著迴圈的結束變)
> 迴圈變數:在整個迴圈過程中所反覆改變的那個數
5. 迴圈結構:
- while結構:先判斷後執行,有可能一次都不執行
- do...while結構:先執行後判斷,至少執行一次
> 當第1要素與第3要素的代碼相同時,首選do...while
## 筆記:
1. Scanner接收用戶輸入的數據:共3步-----------不需要理解,先記住它,面向對象第五天才能理解
```java package day04; import java.util.Scanner; //1.導入掃描儀 //Scanner的演示 public class ScannerDemo { public static void main(String[] args) { Scanner scan = new Scanner(System.in); //2.新建一個掃描儀叫scan System.out.println("請輸入年齡:"); int age = scan.nextInt(); //3.用掃描儀掃描一個整數賦值給age System.out.println("請輸入商品價格:"); double price = scan.nextDouble(); //3.用掃描儀掃描一個小數賦值給price System.out.println("年齡為:"+age+",商品價格為:"+price); } } ```
2. 分支結構:
- if...else if結構:多條路
```java 1)語法: if(boolean-1){ 語句塊1 }else if(boolean-2){ 語句塊2 }else if(boolean-3){ 語句塊3 }else{ 語句塊4 } 2)執行過程: 判斷boolean-1,若為true則執行語句塊1(結束),若為false則 再判斷boolean-2,若為true則執行語句塊2(結束),若為false則 再判斷boolean-3,若為true則執行語句塊3(結束),若為false則執行語句塊4(結束) 3)說明: 語句塊1/2/3/4,必走其中之一-------多選1 ```
```java package day04; import java.util.Scanner; //成績等級判斷 public class ScoreLevel { public static void main(String[] args) { Scanner scan = new Scanner(System.in); System.out.println("請輸入成績:"); double score = scan.nextDouble(); //帶數(888,-45,95,85,65,40) if(score<0 || score>100){ System.out.println("成績不合法"); }else if(score>=90){ //成績合法 System.out.println("A-優秀"); }else if(score>=80){ System.out.println("B-良好"); }else if(score>=60){ System.out.println("C-中等"); }else{ System.out.println("D-不及格"); } } } ```
- switch...case結構:
- 優點:效率高、結構清晰
- 缺點:只能對整數判斷相等
- break:跳出switch
> 面試題:switch後數據的類型可以為:byte,short,char,int,String,枚舉類型
```java package day04; import java.util.Scanner; //命令解析程式 public class CommandBySwitch { public static void main(String[] args) { Scanner scan = new Scanner(System.in); System.out.println("請選擇功能: 1.存款 2.取款 3.查詢餘額 4.退卡"); int command = scan.nextInt(); switch(command){ case 1: System.out.println("存款操作..."); break; case 2: System.out.println("取款操作..."); break; case 3: System.out.println("查詢餘額操作..."); break; case 4: System.out.println("退卡操作..."); break; default: System.out.println("輸入錯誤"); } } } ```
3. 迴圈:反覆多次執行一段相同或相似的代碼
4. 迴圈三要素:
- 迴圈變數的初始化
- 迴圈的條件(以迴圈變數為基礎)
- 迴圈變數的改變(向著迴圈的結束變)
> 迴圈變數:在整個迴圈過程中所反覆改變的那個數
```java 案例一: 輸出5次"行動是成功的階梯" 行動是成功的階梯 行動是成功的階梯 行動是成功的階梯 行動是成功的階梯 行動是成功的階梯 迴圈變數:次數times 1)int times=0; 2)times<5 3)times++; times=0/1/2/3/4/ 5時結束 案例二: 輸出9的乘法表: 1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81 迴圈變數:因數num 1)int num=1; 2)num<=9 3)num++; num=1/2/3/4/5/6/7/8/9/ 10時結束 1*9=9 3*9=27 5*9=45 7*9=63 9*9=81 迴圈變數:因數num 1)int num=1; 2)num<=9 3)num+=2; num=1/3/5/7/9/ 11時結束 ```
5. 迴圈結構:
- while結構:先判斷後執行,有可能一次都不執行
```java 1)語法: while(boolean){ 語句塊/迴圈體----------反覆執行的代碼 } 2)執行過程: 判斷boolean的值,若為true則執行語句塊, 再判斷boolean的值,若為true則再執行語句塊, 再判斷boolean的值,若為true則再執行語句塊, 如此反覆,直到boolean的值為false時,while迴圈結束 ```
```java //2)輸出9的乘法表: //3*9=27 int num = 1; while(num<=9){ System.out.println(num+"*9="+num*9); num+=2; //num++; } System.out.println("繼續執行..."); //1)輸出5次"行動是成功的階梯": int times = 0; //1)迴圈變數的初始化 while(times<5){ //2)迴圈的條件 System.out.println("行動是成功的階梯"); times++; //3)迴圈變數的改變 } System.out.println("繼續執行..."); */ /* 執行過程: times=0 true 輸出 times=1 true 輸出 times=2 true 輸出 times=3 true 輸出 times=4 true 輸出 times=5 false while迴圈結束 輸出繼續執行... */ ```
```java package day04; import java.util.Scanner; //猜數字小游戲 public class Guessing { public static void main