1
我想將1.09478878083135368E7的double值轉換爲int。 所以我用(int)不工作?
int formatted =(int)1.09478878083135368E7;
然後,我通過使用
最終弦距離=將String.valueOf(格式化)這個值發送到另一個活動爲字符串;
我期待看到「1」作爲結果,但我得到的是10947878. 任何想法?
我想將1.09478878083135368E7的double值轉換爲int。 所以我用(int)不工作?
int formatted =(int)1.09478878083135368E7;
然後,我通過使用
最終弦距離=將String.valueOf(格式化)這個值發送到另一個活動爲字符串;
我期待看到「1」作爲結果,但我得到的是10947878. 任何想法?
1.09478878083135368E7
..請注意E7,即(scientific) E notation「將E期移至右邊」。
所以在你的情況下; 1.09478878083135368E7
變成10947887.8083135368
,所以轉換爲int給了我們10947887(你有10947878這可能是一個錯字?)
要添加,如果你想要的整數值,用戶'Math.round' – thepoosh
爲什麼?使用Math.round也得到10947878 – EasterKim
'Math.Round'可能實際上讓你+1在這種情況下,因爲'.8';所以'Math.Round'上的數字應該是'10947888'(可能不是你想要的在這種情況下?) – txtechhelp