1.選擇結構if語句格式及其使用
A:if語句的格式:
if(比較表達式1) {
語句體1;
}else if(比較表達式2) {
語句體2;
}else if(比較表達式3) {
語句體3;
}
...
else {
語句體n+1;
}
B:執行流程:
首先計算比較表達式1看其返回值是true還是false,
如果是true,就執行語句體1,if語句結束。
如果是false,接着計算比較表達式2看其返回值是true還是false,
如果是true,就執行語句體2,if語句結束。
如果是false,接着計算比較表達式3看其返回值是true還是false,
如果都是false,就執行語句體n+1。
C:注意事項:最后一個else可以省略,但是建議不要省略,可以對范圍外的錯誤值提示
import java.util.Scanner; class Demo_If { public static void main(String[] args) { Scanner sc = new Scanner(System.in); //鍵盤輸入, while(true) { System.out.println("請您輸入成績"); //提示輸入 int a = sc.nextInt(); //鍵盤輸入用int類型接收 if (a>100|a<0) { //死循環,方便測試 System.out.println("您輸入的成績有誤"); }else if (a>=90&a<=100) { System.out.println("A等"); }else if (a>=80&a<90) { System.out.println("B等"); }else if (a>=70&a<80) { System.out.println("C等"); }else if (a>=60&a<70) { System.out.println("D等"); }else if (a<60) { System.out.println("E等"); }else { System.out.println("您輸入的成績有誤"); } } } }
2.選擇結構switch語句格式及其使用
A:
switch格式:
switch(表達式) {
case 值1:
語句體1;
break;
case 值2:
語句體2;
break;
…
default:
語句體n+1;
break;
}
B:switch語句的格式解釋
(基本數據類型,只要能提升為int的都可以,引用數據類型中的枚舉(JDK1.5)和String(JDK1.7))
C:執行流程
先計算表達式的值
然后和case后面的匹配,如果有就執行對應的語句,否則執行default控制的語句
import java.util.*; class Dome_If3{ public static void main(String[] args) { //System.out.println("Hello World!"); Scanner sc =new Scanner(System.in); //鍵盤錄入 while(true) { //死循環方便測試 System.out.println("請您 輸入要轉換的星期數"); //鍵盤錄入提示 in week = sc.nextInt(); switch(week) { case 1: System.out.println("星期1"); break; case 2: System.out.println("星期2"); break; case 3: System.out.println("星期3"); break; case 4: System.out.println("星期4"); break; case 5: System.out.println("星期5"); break; case 6: System.out.println("星期6"); break; case 7: System.out.println("星期天"); break; default: System.out.println("您輸入的數字有誤,請重新輸入"); } } } }
3:總結switch語句和if語句的各自使用場景
switch建議判斷固定值的時候用
if建議判斷區間或范圍的時候用
*用switch能做的,用if都能做,單反過來則不行