Java 对汽车实行不同的折扣

Java 对汽车实行不同的折扣,java,Java,我刚刚接触java编程,我需要帮助打印折扣应用后的汽车价格。此时将显示折扣金额 public class carApplication { public static void main(String[] args) { Car car1 = new Car("Toyota", "2012", 13500.00); Car car2 = new Car("Audi", "2011", 12000.00); System.out.pr

我刚刚接触java编程,我需要帮助打印折扣应用后的汽车价格。此时将显示折扣金额

public class carApplication {

    public static void main(String[] args) {


        Car car1 = new Car("Toyota", "2012", 13500.00);
        Car car2 = new Car("Audi", "2011", 12000.00);

        System.out.printf("Car 1 Model: %s; Car year: %s; Car Price: %.2f\n",
                car1.getModel(), car1.getYear(), car1.getcarPrice());

        System.out.printf("Car 1 Model: %s; Car year: %s; Car Price: %.2f\n",
                car2.getModel(), car2.getYear(), car2.getcarPrice());

        System.out.println("Car Price after applying discount");
        car1.setcarPrice(car1.getcarPrice()*(0.05));
        car2.setcarPrice(car2.getcarPrice()*(0.07));

        System.out.printf("Car 1 Model: %s; Car year: %s; Car Price: %.2f\n",
                car1.getModel(), car1.getYear(), car1.getcarPrice());

        System.out.printf("Car 1 Model: %s; Car year: %s; Car Price: %.2f\n",
                car2.getModel(), car2.getYear(), car2.getcarPrice());
    }
}

@Mkreegs是对的,你应该写

car1.setcarPrice(car1.getcarPrice()*(1 - 0.05));
car2.setcarPrice(car2.getcarPrice()*(1 - 0.07));
或者直接:

car1.setcarPrice(car1.getcarPrice()*(0.95));
car2.setcarPrice(car2.getcarPrice()*(0.93));

它显示折扣金额,因为您将价格设置为getcarPrice*0.05,即原价的5%。或者在另一种情况下是7%。正如@肉桂所说,只需乘以1-0.05和1-0.07,或者等于0.95和0.93。与肉桂相同,要得到打折后的汽车价格,你需要从1:getcarPrice*1-0.05中减去打折金额。谢谢,我找到了解决方案