2012-12-16 69 views
-1

當我添加兩個數字時,我的Android程序中有一個非常奇怪的結果。這是我用來找出什麼是走出去的測試代碼:Android Java代碼沒有正確計算數學

private static final float yChannel[] = {12.0f, 8.0f, 4.0f, 0}; 

protected void onCreate(Bundle savedInstanceState) { 
    Log.i("Rectangles","y1: " + yChannel[0]+2.0f); 
    Log.i("Rectangles","y2: " + yChannel[0]); 
} 

的logcat的結果是:

y1: 12.02.0 
y2: 12 

我根本不明白所有的變量是浮動。我的代碼不起作用,因爲它沒有給出正確的結果。我也嘗試清理Eclipse項目。

+1

的代碼工作,你需要周圍的浮動計算括號中,因爲參數都被轉換爲字符串中寫道。如果結果不好,比你寫錯了。 –

+0

你期待什麼結果? – Simon

回答

5
"Rectangles","y1: " + yChannel[0]+2.0f 

是字符串連接,因爲第一個操作數是字符串。

試試這個

Log.i("Rectangles","y1: " + (yChannel[0]+2.0f)); 

float temp = yChannel[0]+2.0f; 
    Log.i("Rectangles","y1: " + temp); 
+3

我覺得真的很愚蠢,我想我應該休息一下... – Andres

+0

如果我每次都有一美元/英鎊/歐元,我覺得在StackOverflow上很愚蠢.... – Simon