我想我的整數如下:將double的小數部分轉換爲整數?在JAVA
double number = 9.7361;
,我想我的intenger有這樣的:7361.
另一個例子:
雙數字2 = 0.43;
我想我的整數有這個:43.
在Java中。
我想我的整數如下:將double的小數部分轉換爲整數?在JAVA
double number = 9.7361;
,我想我的intenger有這樣的:7361.
另一個例子:
雙數字2 = 0.43;
我想我的整數有這個:43.
在Java中。
您的問題有一個答案只要你限制多少你可以去的雙倍的小數部分。對於稍微修改問題,請考慮以下功能:通過10^digits
(d - ((int)d)) * Math.pow(10, digits)
乘以
(d - ((int)d)
然後給digits
位數:
public static int fracPartAsInt(double d, int digits){
return (int)((d - ((int)d)) * Math.pow(10, digits));
}
首先我們隔離雙重的小數部分最後,我們通過截斷爲int來丟棄其餘部分。
你的問題是非常模糊的atleast解釋你想通過這樣做如果它總是三位小數,你可以做到這一點。
double d=9.7681;
int a =d%1000;
這個想法是分離積分和小數部分,並將它們分別轉換爲字符串。以下是詳細的步驟。
1)從浮點數中提取整數部分。
2)首先將整數部分轉換爲字符串。
3)從n中提取整數部分提取小數部分。
4)如果d不爲零,那麼請遵循以下步驟。
... .a)中通過與POW(10相乘,d)
... .B)的整數值轉換爲字符串,並追加到結果轉換分數部分到整數。
「Math.PI」的結果是什麼? –
@BilltheLizard它返回3.1415 ...但只有不到16位數... – Czipperz
你想達到什麼目的? – StuPointerException