if…else
if 与 三目运算符的区别:
- if可以没有结果, 条件运算符一定有一个结果
- if可以同时对多个条件继续判断
- if适用于环境复杂的判断中.
单选泽| 单分支:
if ( 条件 ) {
语句体;
}else{
语句体2;
}
//条件: 是一个值为Boolean类型的表达式
//满足条件,就执行{}中的语句体, 不满足就跳过整个if结构
举例
if(true){
System.out.println("if执行中");
}
System.out.println("if结束");
双选择|双分支
if ( 条件 ) {
语句体1;
}else{
语句体2;
}
//满足条件执行语句体1,不满足执行语句体2
举例:
String name = "hhh";
if(name.equals("hhh")){
System.out.println("用户名正确");
}else{
System.out.println("用户名不正确");
}
多选择|多分支
if ( 条件 ) {
语句体1;
}else if(条件){
语句体2;
}else if(条件){
语句体n...;
}else{
语句体3;
}
//满足条件执行语句体1,不满足执行语句体2,再不满足执行语句体n,都不满足,执行语句体3
举例:
int a = 5;
if(a>0){
System.out.println("a>0");
}else if(a==0){
System.out.println("a=0");
}else if(a<0){
System.out.println("a<0");
}
switch 语句 : 定值判断
switch与if的区别:
- if可以做区间和定值判断
- switch只能做定值判断
语法:
switch(表达式){
case 值1;
语句体1;
break;
case 值2;
语句体2;
break;
case 值3;
语句体3;
break;
.....
default:
语句体n;
break;
}
//执行流程:
1. 计算表达式 ,得到值
2.用值与case后的值对比,相等,就执行对应语句体; 如果不等,继续向下判断
3.若执行的case语句后.没有break,则case穿透; 有则结束循环
4.若所有case后的值都不满足条件, 则执行default;
举例:
int a = 100;
switch(a){
case 20:
System.out.println("i=20");
break;
case 40:
System.out.println("i=40");
break;
case 60:
System.out.println("i=60");
break;
case 80:
System.out.println("i=80");
break;
default:
System.out.println("i=100");
break;
}
注意:case穿透: 满足条件的语句体执行后,如果没有遇到break,则继续向下执行,直到代码结束,或者遇到下一个break;