java保留小數點的幾個方法
阿新 • • 發佈:2018-02-02
bsp turn 格式 pre brush system float mat integer
方法一: String類自帶的方法 String.format("%.2f", 1.2548); "%.2f"其中的數字決定保留幾位
方法二: 格式化的方法
private static final java.text.DecimalFormat df = new java.text.DecimalFormat("0.00%"); private static final java.text.DecimalFormat df2 = new java.text.DecimalFormat("0.00"); public static String format(Double data) { synchronized (df) { return df.format(data); } } public static String format2(Double data) { synchronized (df2) { return df2.format(data); } }
方法三:Float a =1.23466643f;
int b = (int) (a*10000);
a =(float) b/10000;
System.out.println(a);
方法四:可以不四舍五入的保留小數點 方法原理是一位一位的獲取 考慮到位數為0的特殊情況
double num =1;
Integer b =(int) (num*100000);
String a =b/100000+"."
+(b%100000>=10000?b%100000/10000:("0"))
+(b%10000>=1000?b%10000/1000:("0"))
+(b%1000>=100?b%1000/100:("0"))
+(b%100>=10?b%100/10:("0"+b%10));
System.out.println(a);
java保留小數點的幾個方法