2011-06-20 22 views
0

我是JAVA領域的新手,我開始玩耍。我在Netbeans中製作了一個帶有3個文本框的表單。然後,我嘗試添加前兩個文本框,並在點擊按鈕後將總和放在第三個文本框中。我有以下代碼,但它一起列出輸出(而不是總和)。在窗體中添加文本框(JAVA,Netbeans 7)

實施例:2 + 2 = 22,3 + 34 = 334

我的代碼是下面:

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) { 
    String x = jTextField1.getText(); 
    String y = jTextField2.getText(); 
    jTextField3.setText(x + y); 
} 

回答

2

這是因爲當你使用+運營商字符串時,它不會增加,但CONCAT兩個字符串,因爲它是沒有必要的弦始終持有數量。所以你必須首先將你的字符串轉換爲int(或任何其他數字類型),然後進行求和。

試試這個:

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) { 
    try{ 
    int x = Integer.parseInt(jTextField1.getText()); 
    int y = Integer.parseInt(jTextField2.getText()); 
    jTextField3.setText((x + y)+""); 
    catch(Exception e){ 
    //-- NumberFormatException hadling 
    } 
} 

通知的try..catch()。這是因爲有些人可以寫一個字符串,不能像"a324ad"那樣轉換爲int。

1

+操作者對字符串數據類型連接了字符串。如果您試圖添加在文本框中輸入的兩個數字,則需要將其轉換爲數字數據類型。對於Integer,您可以使用Integer.parseInt()

嘗試

String x = jTextField1.getText(); 
String y = jTextField2.getText(); 
jTextField3.setText(Integer.toString(Integer.parseInt(x) + Integer.parseInt(y))); 
+0

它不會讓我使用X和Y作爲字符串,我不得不使用將它們設置爲int以避免公式中出現錯誤。 – sealz

+1

@ harper89你可以使用'Integer.toString()'將int轉換回String(我編輯了我的答案)。 –

+0

啊,看起來像會工作。謝謝你的提示。 – sealz