我注意到样式检查器在实现内联条件时会给出警告:“不要使用内联条件”。为什么呢?
答案 0 :(得分:8)
我认为这是因为代码可读性。
考虑这两个代码,其中a
是一个数字(int
,float
或其他):
<强>#1 强>
if(a < 0) {
a = 0;
} else if(a < 10) {
a = 10;
} else if(a < 20) {
a = 20;
} else if(a < 30) {
a = 30;
}
<强>#2 强>
a = a < 0 ? 0 : a < 10 ? 10 : a < 20 ? 20 : a < 30 ? 30 : a;
他们完全一样,但第一个更清楚。
答案 1 :(得分:2)
需要花费精力来理解内联条件中的内容。如果只有一个条件,则最好使用条件运算符。对于更多这样的条件,if-else-if由于易于阅读而构造更好。