逻辑运算符> >= < <= == !=
一般做条件判断
三元(三目)运算符&& || ! & |
- &&:逻辑与
一假即假
会产生短路,当第一个表达式为假时,整个表达式的结果返回false,后面的表达式就不会再执行- ||:逻辑或
一真即真
也会产生短路,当第一个表达式为真时,整个表达式的结果返回true,后面的表达式就不会再执行
-!:逻辑非
非真既假- &:和逻辑与效果相同,但不会产生短路现象
- |:和逻辑与效果相同,但不会产生短路现象
语法:条件表达式 ?x :y
判断条件表达式,结果是boolean类型,当a为true时,调用x的值,当a为fales时,调用y的值
三元运算符会发生短路
单分支条件判断if是一个语句,但不需要以’;'结尾
判断条件是boolean类型
语法:if(判断条件){执行语句}
双分支条件判断语法:if(条件){
执行语句
}else{执行语句}
else 就是否则
语法:if(条件){
执行语句
}else if{
执行语句
}else if{
执行语句
}else{执行语句}
switchelse if的个数:0~n
else的个数:0~1
- 语法: switch(var) { case 值 ; case 值 ; … default … }
- default 相当于 if 中 else 的效果
- byte
- short
- int
- char
- enum(枚举)
- String
Switch (jdk14新特性)Switch具有穿透效果
可以用关键字 break 阻止穿透效果
-
既可以做语句,也可以做表达式
-
case输出多个语句时必须要加{},且输出语句前要加yield
-
当输出一个语句时可以省略{},且比需省略yield
-
switch作为表达式时,不能省略default,且{}后面要加 ‘;’
与老版对比所做的修改:
1.值后的 :变成了 ->
2.取消了穿透效果,不需要加break
3.case后可以枚举多个值,中间用’,'隔开
4.当Switch作为表达式时,->后可以直接 跟要输出的值



