【发布时间】:2019-05-13 07:23:26
【问题描述】:
假设在用户填写工资和加班文本字段时填写总工资文本字段,但程序一启动它总是显示 java.lang.NumberFormatException: empty String 错误
这是使用的代码
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: 空字符串
【问题讨论】:
-
jTextBasicSalary、jTextHours、jTextOvertime或jTextOvertimePay字段之一在运行jTextGrossPayMouseEntered方法时为空。我不能根据您的 sn-p 确定,但假设它是在您输入总工资字段时执行的。添加一些额外的检查以确保正确填写每个字段。 -
我希望它们由用户填写,我该如何解决?
-
我猜这是一个完全不同的问题,您需要搜索 Java 中 JTextfields 的验证。
标签: java swing jtextfield mouselistener numberformatexception