我是java新手...我只想使用辅助类来计算汽车修理店的账单...取决于零件成本、工作时间和20%的增值税。我们认为每小时的费用为 20 美元。账单将在辅助类别内计算,程序将要求用户输入零件成本和工作时间。请通知我
package Exs2Lecture7;
import javax.swing.JOptionPane;
public class CarRepairApp {
private static String partsStr;
private static String hoursStr;
private static double parts = Double.parseDouble(partsStr);
private static double hours = Double.parseDouble(hoursStr);
private static double bill;
private static CarRepair myRepair;
public static void main(String[] args)
{
CarRepair myRepair = new CarRepair(parts,hours);
partsStr = read("Please enter the cost for the parts: ");
hoursStr = read("Please enter the working hours: ");
}
public static String read (String prompt)
{
return (JOptionPane.showInputDialog(prompt));
}
public void display(String s)
{
this.bill = myRepair.calculateBill();
JOptionPane.showMessageDialog(null, "The cost for the bill will be " + bill);
}
}
辅助类将是
package Exs2Lecture7;
import javax.swing.*;
public class CarRepair
{
private double parts;
private double hours;
private static double HOURS_COST = 20;
private static double VAT = 20;
public CarRepair(double p, double h)
{
parts = p;
hours = h;
}
public double calculateBill()
{
/*double bill = (parts + (hours * HOURS_COST)) +
((parts + (hours * HOURS_COST)) * VAT/100);*/
return ((this.parts + (this.hours * HOURS_COST)) +
((this.parts + (this.hours * HOURS_COST)) * VAT/100));
}
}
最佳答案
您需要解析字符串并将其转换为 double 。
double partsDouble= Double.parseDouble(partsStr);
double hoursDouble= Double.parseDouble(hoursStr);
然后创建 CarRepair
的实例,例如
CarRepair carRepair = new CarRepair(partsDouble,hoursDouble);
然后你可以调用calculateBill()方法
carRepair.calculateBill();
更新
@Blip 正确指出,无需创建另一个引用。 像这样更改你的 main
public static void main(String[] args)
{
partsStr = read("Please enter the cost for the parts: ");
hoursStr = read("Please enter the working hours: ");
double partsDouble= Double.parseDouble(partsStr);
double hoursDouble= Double.parseDouble(hoursStr);
myRepair = new CarRepair(partsDouble,hoursDouble);
myRepair.display();//no need to pass anything
}
关于java - 如何通过 String 方法将计算从辅助类导入到主类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33962720/