布爾變量問題
http://coolshell.cn/articles/2514.html
“如果有三個Bool型變量,請寫出一程序得知其中有2個以上變量的值是true”,於是LZ做了下面的這樣的程序:
booleanatLeastTwo(booleana, booleanb, booleanc) {
if((a && b) || (b && c) || (a&& c)) {
returntrue;
} else{
returnfalse;
}
}
面試官接着問到,請對你的這個程序改進一下,但LZ不知道怎麼改進,於是上StackOverflow上問了一下,下面是StackOverflow上的衆網友的回答。再往下看的時候,希望你自己能先想一想怎麼改進。
有人說,如果你有下面這樣的代碼?
1 2 3 4 5 |
if(someExpression) { returntrue; } else{ returnfalse; } |
你應該改成:
1 |
returnsomeExpression; |
所以,LZ的代碼應該寫成:
1 |
return((a && b) || (b && c) || (a && c)); |