2015-05-18 122 views
0

我想將W輸入到int數組中。我怎樣才能做到這一點?對不起,這個糟糕的問題或英語。將double轉換爲int

public void setX (int Y , double W) 
{  
    array[Y] = W; 
} 
+0

你會失去小數部分。 –

回答

4

如果你感到快樂截斷向0 - 並獲得int.MIN_VALUEint.MAX_VALUE如果該值超出int範圍的 - 你可以只投:

array[Y] = (int) W; 

如果你不是滿意這些警告,你應該重新評估你的設計 - 想想你想要發生,例如如果W15.25。如果您需要保留所有原始信息,則應使用double[]而不是int[]

(你也應該重新審視你的參數名稱,如果這些是你的真正名。閱讀上的Java命名約定。)

+0

你可以嘗試四捨五入數值'array [Y] =(int)Math.round(W);' –

+0

W將會像7.5或者有十進制的東西,而不是四捨五入。我該怎麼辦?請指教。很多謝謝 –

+0

@WillieHii:那麼如果你的數組是整數,它怎麼能不能被舍入?之後你想要數組元素的值是什麼?它不能是7.5 ... –

-1

array[Y]應delcared是前你ASIGN和Y將小於這個數組的大小。

array[Y] = Integer.valueOf(W + ""); 

上面一行將有助於

+1

目前還不清楚你認爲這是一個答案,但它沒有解決問題。 –

+0

我很抱歉讓人困惑。我編輯它。 感謝您的意見 – lethanh

+1

這仍然不會編譯 - 你會期望它使用哪個'Integer.valueOf'重載? –