Java 流程控制:if多選擇機構
阿新 • • 發佈:2021-10-22
-
我們發現剛才的程式碼不符合實際情況,真實的情況還可能存在ABCD四個選擇,存在區間多級判斷。比如90-100就是A,80-90就是B..等等,在生活中我們很多時候的選擇也不僅僅是兩個,所以我們需要一個多選擇結構來處理這類問題!
-
語法
-
if(布林表示式1){
//如果布林表示式1的值為true執行程式碼
}else if(布林表示式2){
//如果布林表示式2的值為true執行程式碼
}else if(布林表示式3){
//如果布林表示式3的值為true執行程式碼
}else{
//如果以上布林表示式都不為true執行程式碼
} -
package com.Ji.struct;
import java.util.Scanner;
public class ifDemo03 {
public static void main(String[] args) {
//成績多級判斷 考試分數大於60是及格,小於60分就不及格。
//在一個if語句至多有一個else語句並且要在最後,else語句在所有的else if語句之後
//if 語句可以有若干個else if語句,他們必須在else 語句之前。
//一旦其中一個else if 語句檢測為true ,其他的else if 以及else語句都將跳過執行
Scanner scanner = new Scanner(System.in);
System.out.println("請輸入成績:");
int score = scanner.nextInt();
if (score==100){
System.out.println("恭喜滿分");
}else if (score<100&&score>=90){
System.out.println("A級");
}else if (score<90&&score>=80){
System.out.println("B級");
}else if (score<80&&score>=70){
System.out.println("C級");
}else if (score<70&&score>=60){
System.out.println("D級");
}else if (score<60&&score>=0){
System.out.println("不及格");
}else {
System.out.println("成績不合法");
}
scanner.close();
}
}
巢狀的if結構
-
使用巢狀的if...else 語句是合法的。也就是說你可以在另一個if或者else if語句中使用if 或 else if語句。你可以像if語句一樣巢狀else if....else.
-
語法
-
if(布林表示式1){
//如果布林表示式1的值為true執行程式碼
if(布林表示式2){
//如果布林表示式2的值為true執行程式碼
}
} -
思考?根據比賽成績及性別,對選手進行分組,當成績小於等於10秒時選手有資格進入決賽,在根據性別男和女分別進入男子組決賽和女子組決賽
package com.Ji.struct;
import java.util.Scanner;
public class ifDemo06 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("請輸入成績:");
int score=scanner.nextInt();
if (score<=10){
System.out.println("請輸入性別:");
String sex =scanner.next();
if ("男".equals(sex)){
System.out.println("恭喜進入男子組決賽!");
}else if ("女".equals(sex)){
System.out.println("恭喜進入女子組決賽!");
}
}else {
System.out.println("請繼續努力!");
}
scanner.close();
}
}