private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
DecimalFormat z = new DecimalFormat("0.00");
double x = Double.parseDouble(fnum.getText());
double y = Double.parseDouble(secondnum.getText());
try {
double f = x + y;
String number = z.format(f);
answer.setText("" + number);
} catch(Exception e ) {
JOptionPane.showMessageDialog(null, "please input a valid number");
}
}
答案 0 :(得分:1)
警告(可以忽略)告诉您未使用您在catch块中声明的变量<fancy-button *ngIf="showButton"></fancy-button>
。我知道使用IntelliJ IDEA,您可以通过将e
的名称更改为e
来删除警告。我不确定NetBeans是否有类似的功能。
但是,你的尝试块是没有意义的。它应该在你的ignored
调用附近,因为如果来自用户的输入不是可以被解释为数字的那些,那么这些调用将会失败。 try块中唯一可能引发异常的方法是Double.parseDouble()
,并且仅当z.format(f)
将其舍入模式设置为z
且默认情况下不是这样。
尝试更像这样的事情。
RoundingMode.UNNECESSARY
编辑:正如对OP的评论所指出的那样,通常不建议捕获异常,因此更新以捕获更具体的NumberFormatException。
答案 1 :(得分:0)
这是真的 - 不使用变量e。 要解决此问题(实际上是警告),您可以打印此异常。
示例:
catch(Exception e){
System.out.println(e);
JOptionPane.showMessageDialog(null, "please input a valid number");}