java基础之if与switch判断(4)
文章目录
- java基础之if与switch判断(4)
- 一、if判断
- 1.单层if判断
- 2.多层if判断
- 3.if嵌套
- 二、switch判断
- 三.if与switch的区别
- if与三目运算符
- 四.小结
一、if判断
1.单层if判断
if(表达式){
表达式成立执行的代码;
}else{
表达式不成立执行的代码;
}
表达式必须是逻辑形式,也就是boolean类型.if判断后的else可写可不写.
2.多层if判断
if(表达式1){
表达式1成立执行的代码;
}else if(表达式2){
表达式2成立执行的代码;
}else{
表达式1和2都不成立执行的代码;
}
多层if判断可以使用else if进行多条件判断,可以无限写下去,else可写可不写.
3.if嵌套
if(表达式1){
表达式1成立执行的代码;
if(表达式2){
表达式2成立执行的代码;
}else if(表达式3){
表达式3成立执行的代码;
}else{
表达式2,3都不成立执行的代码;
}
}else{
表达式1不成立执行的代码;
}
嵌套if判断就是在第一个if判断里面再写一个if判断,可以无限写下去,最后的else可写可不写.
二、switch判断
switch (表达式){
case 常量值1:{
System.out.println("对应语句块!");
break;
}
case 常量值2:
System.out.println("对应语句块!");
break;
default:
System.out.println("表达式都不成立语句块");
break;
}
说明:
1.表达式的返回值必须是int/byte/char/short的值,jdk1.7后支持String类型的值
2.case子句中的取值必须是常量/固定值,且所有case子句的取值不能重复
3.default子句是可选的,相当于else
4.break语句用来在执行玩case语句后跳出程序,如果没有写break,程序会直接向下运行,且不用判断.
5.case后面的执行体可写{},也可以不写,{}是为case语句提供一个作用域,变量等只能在此作用域内生效,不写的话,就会在switch所有内部生效.
三.if与switch的区别
同: 都是选择判断分支语句.
异:
1.语法不同.
2.语句后表达式值的类型不同,if表达式值是boolean类型.switch表达式值是int/byte/char/short/枚举/string类型
3.使用场景不同,if判断变量的值在某个区间之内,switch判断变量的值是否是某个定值.
在实现分支判断时,一个好的习惯是把匹配成功率高的判断放在前面,可以提高效率.
在表达式中判断,应尽量使用确定的值去跟不确定的的值去判断,否则影响效率或者出现空指针.
if与三目运算符
三目运算符都可以使用if语句来实现,反之则不成立.
四.小结
本章概述了if判断与switch判断的使用以及区别,内容都是干货,这里使用的逻辑判断语句是必须要掌握的.
有哪里不足或者有更好的建议,欢迎留言吐槽,有哪里不懂的小伙伴,可以私信我,我会一一答复,感谢认可,感谢支持!