三目表达式运算符优先级分析

看到一个三目表达式,看了一会才明白(本人菜鸟,勿喷)

boolean b=true?false:true?false:true;  //b=tuer?false:false
System.out.println(b);

输出:

false

== 优先级高于三目运算符,先判断true == true,此时返回true,运算之后的表达式为 Bool b = true?false:true?false:true; 

此时三目运算符执行顺序为:从右向左执行,true?false:true 返回false;

这时的表达式为:boolean b=true?false:false ;

最终结果为:false。

 

posted @ 2018-08-23 14:13  闻长歌而知雅意  阅读(811)  评论(0编辑  收藏  举报