java double 的精度_Java Double的精度问题
Java.text
類 DecimalFormat
java.lang.Object
java.text.Format
java.text.NumberFormat
java.text.DecimalFormat
void setMaximumFractionDigits(int newValue)??????????? 設(shè)置某個(gè)數(shù)的小數(shù)部分中所允許的最大數(shù)字位數(shù)。
void setMinimumFractionDigits(int newValue)??????????? 設(shè)置某個(gè)數(shù)的小數(shù)部分中所允許的最小數(shù)字位數(shù)。
//Main.java
import java.util.*;
import java.text.*;
public class Main{
public static void main(String [] args){
try{
Scanner input=new Scanner(System.in);
double n=input.nextDouble();
System.out.println(SicenToComm(n));
}catch(Exception e){
}
}
public static String SicenToComm(double value) {?? //保留小數(shù)點(diǎn)后3位(四舍五入),且不按科學(xué)計(jì)數(shù)法輸出
String retValue = null;
DecimalFormat df = new DecimalFormat();
df.setMinimumFractionDigits(3);
df.setMaximumFractionDigits(3);
retValue = df.format(value);
retValue = retValue.replaceAll(",", "");
return retValue;
}
}
//測(cè)試用例:
1。E:\java\lilongfei\java精度問(wèn)題>java Main
45.2222
45.222
2。E:\java\lilongfei\java精度問(wèn)題>java Main
45.000000000000
45.000
3。E:\java\lilongfei\java精度問(wèn)題>java Main
45.33366666
45.334
4。E:\java\lilongfei\java精度問(wèn)題>java Main
45555555555555
45555555555555.000
5。E:\java\lilongfei\java精度問(wèn)題>java Main
0.0000006
0.000
總結(jié)
以上是生活随笔為你收集整理的java double 的精度_Java Double的精度问题的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Linux使用ftp传输10g的文件,U
- 下一篇: 负数比较大小_人教版六下【第一单元】负数