一位面试官最近问了我这个问题:给定三个布尔变量 a、b 和 c,如果三个中至少有两个为真,则返回真。
我的解决方案如下:
boolean atLeastTwo(boolean a, boolean b, boolean c) {
if ((a && b) || (b && c) || (a && c)) {
return true;
}
else{
return false;
}
}
他说这可以进一步改善,但如何改善?
原文由 user282886 发布,翻译遵循 CC BY-SA 4.0 许可协议
而不是写:
写:
至于表达式本身,是这样的:
或者这个(你觉得哪个更容易掌握):
它测试
a
和b
一次,并且c
最多一次。参考