単一選択構造の場合
-
文法:
if(ブール式){
//ブール式がtrueの場合、ステートメントが実行されます
}
-
処理する:
-
例:
Scanner scanner = new Scanner(System.in); System.out.println("请输入内容"); String s = scanner.nextLine(); //equais:比较字符串是否相等 if (s.equals("这是if单选择结构")){ System.out.println(s); } System.out.println("经条件判断不相等,End"); scanner.close();
二重選択構造の場合
-
文法:
if(ブール式){
//ブール式がtrueの場合、ステートメントが実行されます
}そうしないと{
//ブール式がfalseの場合に実行されるステートメント
}
-
処理する:
-
例:
同社はソフトウェアを購入したいと考えており、成功した場合は100万ドルを支払い、失敗した場合は開発者を見つけます。
Scanner scanner = new Scanner(System.in); System.out.println("公司收购软件成功了吗:"); String s = scanner.nextLine(); if (s.equals("成功")){ System.out.println("支付一百万"); }else { System.out.println("自己找人开发"); }
多肢選択構造の場合
-
文法:
if(ブール式1){
//ブール式1がtrueの場合、ステートメントが実行されます
} else if(ブール式2){
//ブール式2がtrueの場合、ステートメントが実行されます
} else if(ブール式3){
//ブール式2がtrueの場合、ステートメントが実行されます
}そうしないと{
//上記のブール式がすべて真でない場合、ステートメントが実行されます
}
-
処理する:
-
例:
Scanner scanner = new Scanner(System.in); System.out.println("请输入成绩:"); double score = scanner.nextDouble(); if (score == 100){ System.out.println("满分"); }else if (score >=90 && score < 100){ System.out.println("A"); }else if (score >=80 && score < 90){ System.out.println("B"); }else if (score >=60 && score < 80){ System.out.println("C"); }else if (score < 60){ System.out.println("不及格"); }else{ System.out.println("成绩不合法"); } scanner.close();
-
複数選択構造の場合の注意
ifステートメントには最大で1つのelseステートメントがあり、elseステートメントは結局elseifステートメントです。
ifステートメントは複数のelseifステートメントを持つことができ、それらはelseステートメントの前になければなりません。
else ifステートメントの1つがtrueとして検出されると、他のelseifステートメントとelseステートメントはスキップされます。
ifステートメントとelseifステートメントの両方に括弧で囲まれたブール式がありますが、elseステートメントだけにはありません。
構造の場合はネスト
- ネストされたif ... elseステートメントを使用することは合法です。
- if(ブール式1){
//ブール式1がtrueの場合、ステートメントが実行されます
if(ブール式2){
//ブール式2がtrueの場合に実行されるステートメント
}
}