gpt4 book ai didi

java - 当我运行 jframe 时,它​​总是显示 "java.lang.NumberFormatException: empty String"

转载 作者:行者123 更新时间:2023-11-30 05:38:48 24 4
gpt4 key购买 nike

总工资文本字段应该在用户填写工资和加类文本字段时填写,但是一旦程序启动,它总是显示 java.lang.NumberFormatException:空字符串错误

这是使用的代码

   private void jTextGrossPayMouseEntered(java.awt.event.MouseEvent evt) {                                           
try{

DecimalFormat numberFormat = new DecimalFormat("#.00");

double salary = Double.parseDouble(jTextBasicSalary.getText());
double hours = Double.parseDouble(jTextHours.getText());
double overtime = Double.parseDouble(jTextOvertime.getText());
double overtimepay = Double.parseDouble(jTextOvertimePay.getText());
double total1;
double total2;
double total3;

total1 = salary * hours;
total2 = overtime * overtimepay;
total3 = total1 + total2;

String gross = String.valueOf(total3);

jTextGrossPay.setText(gross);

}

catch(Exception e){
e.printStackTrace();
}

}

在我运行程序后,这些是错误

java.lang.NumberFormatException: empty String

最佳答案

这里:

private void jTextGrossPayMouseEntered(

表示当鼠标进入屏幕上的某个组件时执行此代码。

你必须明白:鼠标移动到某处等同于“用户已在所有文本字段中输入了所有必需的信息”。

然后:

double salary = Double.parseDouble(jTextBasicSalary.getText());

您可以/应该做什么:在对文本字段的内容执行任何操作之前,检查文本字段的内容!

含义:在考虑解析之前,您应该检查文本字段是否包含非空字符串。如果是这样,您可以在 try/catch block 中进行解析。如果解析失败,您可以向用户显示一个消息框,告诉他您希望他输入什么。您应该分别对所有文本字段执行此操作。

正如最初所说:问问自己何时应该进行检查/解析。当鼠标输入“某物”时真的会发生这种情况吗?或者更像是:当单击某个按钮时应该发生这种情况?

所以:解决方案也可能是编写新代码,并将其放入某种操作监听器中。对操作使用react,例如单击按钮或选择菜单项!

关于java - 当我运行 jframe 时,它​​总是显示 "java.lang.NumberFormatException: empty String",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56107489/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com