变量不会根据另一个变化而更新

时间:2018-05-27 11:11:10

标签: java

在我的程序中,我有一个方法calculateCost(),它根据所述卡车的最低温度获得卡车的成本。

public double calculateCost() {

    int minimumTemperature = this.getTemperature();

    System.out.println("Temp is: " + minimumTemperature);

    double costOfTruck = 900 + 200 * (Math.pow(0.7, (minimumTemperature / 5))); 

    System.out.println("Cost is: " + costOfTruck);

    return costOfTruck;
}

执行此方法时,minimumTemperature会正确地更改,如控制台中所示,但是,更改minimumTemperature时,costOfTruck不会更改。

1 个答案:

答案 0 :(得分:4)

如果minimumTemperature< 5然后由于整数除法minimumTemperature / 5将等于零,Math.pow(0.7, (minimumTemperature / 5)将等于1,所以尝试使用双数字类型

double costOfTruck = 900 + 200 * (Math.pow(0.7, (minimumTemperature / 5.0)));