【发布时间】:2017-05-24 14:12:43
【问题描述】:
代码是用 netbeans 8.2 编写的
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
int a=Integer.parseInt(jTextField1.getText());
int b=Integer.parseInt(jTextField2.getText());
int c=a+b;
jTextArea1.setText("addition is"+c);
}
错误就这样出现了——请告诉 wats 错误——
Exception in thread "AWT-EventQueue-0" java.lang.NumberFormatException: For input string: " 3"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Integer.parseInt(Integer.java:569)
at java.lang.Integer.parseInt(Integer.java:615)
at addsf.jButton1ActionPerformed(addsf.java:95)
at addsf.access$000(addsf.java:11)
还有更多内容。 请指导。
【问题讨论】:
-
你的
String有一个空格,考虑在上面调用trim()。 -
你在“3”中有一个前导空格
-
你有没有做任何事情来理解这个问题?
-
以后,请尝试更严格地阅读错误消息,因为它通常会告诉您确切的问题、位置和原因,就像它在这种情况下所做的那样。请注意,如果这是我的 GUI,我会尝试通过向用户展示不允许错误输入的输入组件(例如 JSpinner、JFormattedTextField 或使用 DocumentFilter 的 JTextField)来让事情变得更加愚蠢只允许数字。
标签: java