运算过程:如果布尔表达式的值为true,就返回表达式1的值,否则返回表达式2的值,例如:
int sum=90
String str=sum<100 ? "失败" : "成功"
等价于下列代码:
String str=null
if(num<100){
str="失败"
}else{
str="成功"
}
三目运算符和if……else语句相比,前者使程序代码更加简洁。
此种写法是Java8 Lambda表达式双冒号运算就是Java中的方法引用 method references
[方法引用]的格式是 类名::方法名
举例:
1.表达式:
person ->person.getName()
可以替换成:
Person::getName
2.表达式:
() ->new HashMap<>()
可以替换成:
HashMap::new