2017-02-21 85 views
1

当我运行它时,它将一起显示两个输入。例如1 + 2会出现到12.我知道这个字符串必须以某种方式更改为一个整数,但我失去了如何这样做。任何帮助是极大的赞赏。从JTextFields将不能在两个文本字段中添加/减去/乘/除

private void  
jButton5ActionPerformed(java.awt.event.ActionEvent evt) {       
jLabel1.setText (String.valueOf(jTextField1.getText() + 
jTextField2.getText())); 

回答

2

值是字符串。如果您想对它们进行算术运算,则必须将它们转换为适当的数字类型,如Integer或Double。

jLabel1.setText(String.valueOf(Integer.parseInt(jTextField1.getText()) + Integer.parseInt(jTextField2.getText())));

+0

'setText()'方法需要'String'参数,而不是'int'。你需要在括号内将'int'转换为'String'。 – Yousaf

0

getText()方法返回一个String,这样你就不需要使用String.valueOf()方法,因为它是用来non-string类型值转换为String类型值。

要转换Stringint,使用Integer.ParseInt()方法

private void jButton5ActionPerformed(java.awt.event.ActionEvent evt) { 

    jLabel1.setText (String.valueOf(Integer.parseInt(jTextField1.getText()) + 
    Integer.parseInt(jTextField2.getText()))); 
} 
0

我知道这串以某种方式被改变成一个整数,但我 我失去了对如何做到这一点。

你说得对。这确实是问题所在。使用Integer.parseInt方法很容易实现将字符串数字提取为int。

private void  
jButton5ActionPerformed(java.awt.event.ActionEvent evt) {       
jLabel1.setText (String.valueOf(Integer.parseInt(jTextField1.getText()) + 
Initeger.parseInt(jTextField2.getText())));