三個boolean值至少兩個爲ture,則判爲true

一、普通方法java

boolean atLeastTwo(boolean a, boolean b, boolean c) {
    if ((a && b) || (b && c) || (a && c)) {
        return true;
    }
    else{
        return false;
    }
}

二、提升方法(一)code

boolean atLeastTwo(boolean a, boolean b, boolean c) {
    return a ? (b || c) : (b && c);
}
或者
boolean atLeastTwo(boolean a, boolean b, boolean c) {
    return a && (b || c) || (b && c);
}

三、提升方法(二)ast

return a ^ b ? c : a //採用異或

四、提升方法(三)class

int howManyBooleansAreTrue =
      (a ? 1 : 0)
    + (b ? 1 : 0)
    + (c ? 1 : 0);return howManyBooleansAreTrue >= 2;

五、提升方法(四)方法

(a==b) ? a : c;
相關文章
相關標籤/搜索