尝试将输入作为字符串读入,然后将其转换为double以计算grossPay,我收到的错误表示无法将字符串转换为double。
public class EmployeeTest
{
public static void main(String args[])
{
String workerName;
String hoursWorked;
String hourlyPay;
String grossPay;
String isQuit;
String message;
workerName = JOptionPane.showInputDialog("Enter first name");
while(!workerName.equals("QUIT"))
{
hourlyPay = JOptionPane.showInputDialog("Enter hourly pay");
hoursWorked = JOptionPane.showInputDialog("Enter hours worked");
grossPay = Double.parseDouble(hourlyPay)*Double.parseDouble(hoursWorked);
Employee a1 = new Employee(workerName, hoursWorked, hourlyPay, grossPay);
答案 0 :(得分:1)
错误实际上应该是"无法从double转换为String",因为grossPay
的类型为String
。要将double
转换为String
,您可以使用String#valueOf(double)
,但更好的解决方案是将变量的类型更改为double
:
double grossPay;
其他变量也应更改其类型以反映其值:
int hoursWorked;
double hourlyPay;
请注意,这需要更改Employee
的构造函数以使用正确的类型。
答案 1 :(得分:1)
不应该这样:
Double grossPay;