int foo = bar > baz ? bar : baz;
int foo = someBoolean ? bar : baz;
int foo = (bar > baz) ? bar : baz;
int foo = (someBoolean) ? bar : baz;
int foo = (bar > baz) ? bar : baz;
int foo = someBoolean ? bar : baz;
我无法决定我应该使用这三个中的哪一个。我可以:
在以下示例中不要使用括号,否则会导致可读性差:
min[0] = min[0] > pos.x ? pos.x : 0;
始终使用括号,但在简短的表达式中可能会出现一些难看的代码:
setValue(val + scrollBar.getBlockIncrement() * ((scrollsUp) ? -1 : 1));
当条件中有空格时,介于两者之间并使用括号,但如果条件只是一个布尔变量,则不是:
min[0] = (min[0] > pos.x) ? pos.x : 0;
setValue(val + scrollBar.getBlockIncrement() * (scrollsUp ? -1 : 1));