所以我有这个程序,它应该接受用户输入,比如汽车名称,并在这里计算每月的价格和付款:
import java.lang.*;
import java.io.*;
import java.util.*;
public class NewCar
{
private int year;
private String make;
private String model;
private double sticker,discount,tax,finalP,final2,final3;
private int month,monPayt;
private int abbrev1;
private String abbrev2;
private String abbrev3;
public NewCar(int year, String make, String model)
{
this.year= year;
this.make= make;
this.model = model;
}
public int getYear()
{
return year;
}
public String getMake()
{
return make;
}
public String getModel()
{
return model;
}
public String carDesc()
{
return year + " " + make + " " + model;
}
public String carAbbrev()
{
abbrev1 = year % 100;
String abbrev2 = make.substring(0,1);
String abbrev3 = model.substring(0,1);
return abbrev1 + abbrev2 + abbrev3;
}
public double calcFinalPrice()
{
final2 = (sticker - discount);
final3 = final2 * tax;
finalP = final2 + final3;
return finalP;
}
public int calcZeroPctMonPayt()
{
monPayt = (int)finalP / month;
return monPayt;
}
public String toString()
{
return "You want to purchase a " + carDesc() + ". Abbreviation: " + carAbbrev();
}
}
我用这个测试器类测试它:
import java.lang.*;
import java.io.*;
import java.util.*;
public class NewCarTester
{
public static void main(String[] args)
{
Scanner scan = new Scanner(System.in);
System.out.println("Enter the car's Year, Make and Model: ");
int year = scan.nextInt();
String make = scan.next();
String model = scan.next();
System.out.println("Enter the Sticker Price: ");
int sticker = scan.nextInt();
System.out.println("Enter the discount: ");
int discount = scan.nextInt();
System.out.println("Enter the Sales Tax Rate: ");
int tax = scan.nextInt();
System.out.println("Enter the number of Months at Zero Percent Interest: ");
int month = scan.nextInt();
NewCar c = new NewCar(year, make, model);
System.out.println(c.toString());
System.out.println("Final Price : " + c.calcFinalPrice());
System.out.println(c.calcZeroPctMonPayt());
}
}
现在一切正常,接受计算方法,每当我调用其中一种计算方法时,我每次都会得到 0.0。这让我相信用户输入的输入没有正确地存储到他们应该进入的变量中。任何人都可以找出问题并帮助我解决它吗?谢谢!另外,我遇到的另一个问题是,如果用户输入带有小数的销售税,程序会出错并停止运行,有人对此有任何见解吗?