Java 为不同的情况清理一些复杂的逻辑
我有下面的图表,它将根据下表中的条件做一些事情 只是想知道这是满足所有条件的最佳方式吗Java 为不同的情况清理一些复杂的逻辑,java,Java,我有下面的图表,它将根据下表中的条件做一些事情 只是想知道这是满足所有条件的最佳方式吗 Java 8 如果rate为true,则应设置2Stars 然后检查折扣是否为真-然后将1Stars设置为真 private void setDisplayTheStars() { if (discount && rate) { 2Stars = true; } else if (!discount && rate) {
Java 8
如果
rate
为true,则应设置2Stars
然后检查折扣
是否为真-然后将1Stars
设置为真
private void setDisplayTheStars() {
if (discount && rate) {
2Stars = true;
}
else if (!discount && rate) {
2Stars = true;
}
else if (discount && !rate) {
1Stars = true;
}
}
如果您要声明布尔值,那么可以按如下方式执行
if (rate) {
2Stars = true;
}
else if (discount) {
1Stars = true;
}
如果
rate
为true,则应设置2Stars
然后检查折扣
是否为真-然后将1Stars
设置为真
private void setDisplayTheStars() {
if (discount && rate) {
2Stars = true;
}
else if (!discount && rate) {
2Stars = true;
}
else if (discount && !rate) {
1Stars = true;
}
}
如果您要声明布尔值,那么可以按如下方式执行
if (rate) {
2Stars = true;
}
else if (discount) {
1Stars = true;
}
有多种方法可以实现这一点。我将星星数转换成一个整数,并将其分解为折扣/无折扣或费率/无费率,然后在更广泛的条件中处理其他条件。FWIW,这和业务逻辑一样简单,所以在它变得更复杂之前,它实际上并不重要。有多种方法可以实现这一点。我将星星数转换成一个整数,并将其分解为折扣/无折扣或费率/无费率,然后在更广泛的条件中处理其他条件。FWIW,这和业务逻辑一样简单,所以在它变得更复杂之前,它实际上并不重要。根据您的逻辑,如果速率为真,我们只设置为2star。我在想,如果
折扣为假
且费率为真
,则应设置2 tar。这是条件之一。2当利率和折扣都为真时,TARS为真。这意味着当速率为真时,2Stars必须为真。要理解这一点,只需查看您的表并回答以下问题:2Stars何时为真从您的逻辑我们仅在速率为真时设置为2Stars。我在想,如果折扣为假
且费率为真
,则应设置2 tar。这是条件之一。2当利率和折扣都为真时,TARS为真。这意味着当利率为真时,2Stars必须为真。要理解这一点,只需看一下表并回答以下问题:2Stars何时为真