我注意到样式检查器在实现内联条件时会向您发出警告:“不要使用内联条件”。为什么?
问问题
5228 次
2 回答
11
我认为这是因为代码可读性。
考虑这两个代码,其中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;
他们做的事情完全相同,但第一个更清楚。
于 2013-09-07T16:50:01.520 回答
3
理解内联条件中发生的事情需要努力。如果只有一个条件,最好使用条件运算符。对于一个以上的条件,if-else-if 构造更好,因为它易于阅读。
于 2013-09-07T16:59:02.127 回答