2010-11-05 33 views
3

我試圖從EditText字段中將兩個數字一起添加。到目前爲止,我有下面的代碼,我相信將EditText字段'pos1_deg'&'pos2_deg'轉換爲整數deg1 & deg2。將整數轉換爲字符串的問題

deg1 = Integer.parseInt(pos1_deg.getText().toString()); 
deg2 = Integer.parseInt(pos2_deg.getText().toString()); 

我然後執行以下操作將其添加在一起

degSum = deg1 + deg2 

然後是degSum寄存器保存DEG1的總和& 2.這是正確的那麼遠?

然後輸出回'結果'EditText我需要將整數degSum更改爲一個字符串。我認爲正確的方法是使用下面的代碼:不過,我得到一個「無法調用的toString()的基本類型int」錯誤

result.setText(degSum.toString()); 

。我究竟做錯了什麼?

任何幫助

+0

它是什麼語言? – Anpher 2010-11-05 12:04:34

+0

語言是......? – 2010-11-05 12:04:46

+0

一小時前還有另一個問題給出了一個答案:[如何從整數轉換爲字符串](http://stackoverflow.com/questions/4105331/how-to-convert-from-int-to-string) – 2010-11-05 12:25:53

回答

11

(假設這是Java的...)

的消息是正確的。原始值(如int)不能在其上調用方法,因爲它們不是對象。相關的方法,而不是登記在Integer類靜態,所以不是你應該使用:

result.setText(Integer.toString(degSum)); 

(此方法也需要,讓您指定要在數字輸出基地的第二個可選參數,所以你可以通過調用Integer.toString(degSum, 16)例如獲得十六進制表示。你需要大概沒有什麼,但現在值得銘記。)

+0

工作過。非常感謝 – Entropy1024 2010-11-05 12:41:21

0

非常感謝您是否嘗試過:

result.setText(String.valueOf(deg_sum)); 
0
  1. 你可以嘗試這樣做將String.valueOf(deg_sum)

  2. 你可以讓你的degSum不是int,但是Integer,所以toString方法將可用。

1

當您將字符串串聯到非字符串時,結果是一個字符串。

例如

int deg1 = 5; 
int deg2 = 4; 
result.setText("" + deg1 + deg2): // passes in "45" (a String) 
result.setText("" + (deg1 + deg2)): // passes in "9" (a String) 
result.setText(deg1 + deg2); // passes in 9 (an int), compile error