a>b?a:c>d?c:d
假如a=3,b=4,c=5,d=2,最后结果为什么是5?
为什么a>b不成立最后返回值返回到c
我有点不理解这个理念
首先要先清楚一个概念就是运算符“?”的用法,即:
<表达式1> ? <表达式2> : <表达式3>
假如表达式1得值为真跳到表达式2,反之跳到表达式3。
因为a>b为假,跳转到c>d?c:d,同理再对这个表达式进行判断,因为c>d成立,跳转到c,最后的结果也就是c了。
a>b?a:c>d ==> 3 < 4 所以执行 c > d?c:d ==> 5 > 2 所以输出c c = 5