String str="4444.1122";
double?num;
java.text.DecimalFormat myformat=new java.text.DecimalFormat("#0.00");
num=Double.parseDouble(str);//裝換為double類型
num=Double.parseDouble(myformat.format(num));//保留2為小數
System.out.println(num);
擴展資料:
Java中double類型數字轉換
/*
* 如果是小數,保留兩位,非小數,保留整數
* @param number?
*/
public static String getDoubleString(double number) {
String numberStr;
if (((int) number * 1000) == (int) (number * 1000)) {
//如果是壹個整數
numberStr = String.valueOf((int) number);
} else {
DecimalFormat df = new DecimalFormat("######0.00");
numberStr = df.format(number);
}
return numberStr;
}
思路:
1.如果是整數,比如從服務器獲取下來是整數4,由於java特性,會將4轉換成4.0.我這邊的處理方式是:將這個數字強制取整,然後乘以1000(小數點後移3位)如果等於這個數字乘以1000再取整,那麽這個數就是整數,只是被java強制轉換成了小數。
2.如果原本就是小數,則利用DecimalFormat直接進行轉換。