Java,无限if语句

时间:2018-10-12 17:46:52

标签: java

我正在编写一个用于汽车租赁公司的计划(学校项目),如果您是会员,可以享受折扣。如果您每周预订汽车,则可得到每周乘以汽车基本价格的乘积。有没有一种方法可以使您放置无数天的代码?到目前为止,我最多需要2周的时间,但是如果他们要28天或35天等该怎么办?

if (Member == 0) {

} else if (Days < 7 ) {
    Discount = Car * 0;
    System.out.println("Club Member Discount:" + "$ " + Discount);
} else if (Days < 14) {
    Discount = Car * -1 ; 
    System.out.println("Club Member Discount:" + "$ " + Discount);
}

2 个答案:

答案 0 :(得分:1)

假设days是整数类型(intlong。),一种相对较快的实现方法是:

int discount = (-days/7)*car;

只需将int切换为car的类型即可。

答案 1 :(得分:0)

只需将Days除以7,即可获得折扣。

discountAmount = Math.floor(Days / 7);

现在Discount_amt将等于此人成为会员的几周时间。

现在,您无需任何IF语句就可以计算Discount

if (Member == 0) {

} else {
    Discount = Car * (discountAmount * -1);
    System.out.println("Club Member Discount:" + "$ " + Discount);
}

这还有另一个好处,就是您可以创建最大折扣。

} else {
    if(discountAmount > 3) discountAmount = 3;
    Discount = Car * (discountAmount * -1);
    System.out.println("Club Member Discount:" + "$ " + Discount);
}