模拟三元操作符和真正三元操作符的区别

Posted 遂古之初

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了模拟三元操作符和真正三元操作符的区别相关的知识,希望对你有一定的参考价值。

 1 // 三元操作符是用来处理简单的判断的
 2 a>b?a:b
 3 // 写成if的情况
 4 if(a>b)
 5     return a;
 6 else 
 7     return b;
 8 
 9 //或许用and和or来模拟
10 a>b and a or b
11 //但是不要用模拟的三元操作符干复杂的事,例如:
12 bool value1 and bool value2 or bool value3
13 例如在这情况下当value1 = false,value2 = true, value3 = false时,模拟的三元操作符和if语句结果不一致:
14 if false
15     return true;
16 else 
17     return false;
18 结果是 true
19 false and true or false
20 结果是 false
21 //另外还有 value1 = true ,value2 = false , value3 = true
22 value1 = false,value2 = false, value3 = true
23 
24 //所以,不要用模拟的三元操作符干复杂的事,会和预想中不同,就简单的条件返回值就好了(a>b?a:b)

 

以上是关于模拟三元操作符和真正三元操作符的区别的主要内容,如果未能解决你的问题,请参考以下文章

三元操作符的类型务必一致

Java开发高质量代码建议1:三元操作符的类型务必一致

Java开发高质量代码建议1:三元操作符的类型务必一致

Mac OS X 和/或 iOS 中的三元光栅操作?

三元运算文件操作

python基础操作_集合_三元运算