控制语句(选择语句)
**重要 用来实现业务
分为三类:控制语句,选择(if switch),循环(for ,while,do...while),转向break, continue, return
if任何情况下只能执行一个分支
if(布尔类型){
}
if(布尔类型){
分支一
}else{
分支二
}
if(布尔表达式){
分支1
}else if(布尔表达式){
分支2
}else if(布尔表达式){
分支3
} //从上往下,有true就退出
if(布尔类型){
分支一
}else{
分支二
}
if(布尔表达式){
分支1
}else if(布尔表达式){
分支2
}else if(布尔表达式){
分支3
}else{
}有else表示至少一个分支执行
没有else可能导致每个分支都不执行
***要是分支单当中只有一条java语句,则其大括号可以省略
****(关系运算符(==,>=)的结果都是布尔类型)
//最初版 public class Predict{ public static void main(String[] args){ java.util.Scanner i = new java.util.Scanner(System.in); System.out.println("请输入天气信息"); int wh = i.nextInt(); // Scanner j = Scanner(System.in); System.out.println("请输入性别信息"); int sex = i.nextInt(); if(wh !=0 &&wh !=1 &&sex !=0&&sex !=1){ System.out.println("输入不合适"); return; } if(wh==0){//晴天 if(sex==0){ System.out.println("防晒霜玩耍"); }else{ System.out.println("直接玩耍"); } }else{//雨天 if(sex==0){ System.out.println("小花伞"); }else{ System.out.println("大黑伞"); } } }
****switch
语法格式
switch(值){ //支持int和String类型 jdk8之后才支持String ///因此可以使用byte short char
case 值:
java语句;......
break;
case 值:
java语句;......
break;//非必须
default://非必须
java语句
}
执行原理 值与值之间使用双等号(==)进行匹配 值相同就执行然后break; 没有break会产生case穿透的现象 所有case不执行 那就执行default
********如果多个case的结果是同一个值,可以使用case合并
***代码中的return可以结束main方法