针对不同情况清理一些复杂的逻辑

时间:2019-07-10 14:55:56

标签: java

Java 8

我有下面的图表,它将根据下表中的条件进行操作

enter image description here

想知道这是满足所有条件的最佳方法

private void setDisplayTheStars() {
    if (discount && rate) {
        2Stars = true;
    }
    else if (!discount && rate) {
        2Stars = true;
    }
    else if (discount && !rate) {
        1Stars = true;
    }
}

1 个答案:

答案 0 :(得分:4)

如果2Stars为true,则应设置rate

然后检查discount是否为真-然后将1Stars设置为true。

if (rate) {
    2Stars = true;
}
else if (discount) {
    1Stars = true;
}

如果您声明布尔值,则可以按以下方式完成

boolean twoStars = rate == true;
boolean oneStars = !twoStars && discount == true;