1. 以“0”补位时:
如果数字少了,就会补“0”,小数和整数都会补;
如果数字多了,就切掉,但只切小数的末尾,整数不能切;
同时被切掉的小数位会进行四舍五入处理。
2. 以“#”补位时:
如果数字少了,则不处理,不会补“0”,也不会补“#”;
如果数字多了,就切掉,但只切小数的末尾,整数不能切;
同时被切掉的小数位会进行四舍五入处理。
package com.tool.decimalFormat; import java.text.DecimalFormat; /** * */ public class Demo1 { public static void main(String args[]) { double pi = 123.1512134567; // 取整数部分 String s1 = new DecimalFormat("0").format(pi); System.out.println("取整数:" + s1);//123 // 取小数点后1位,四舍五入 String s2 = new DecimalFormat("0.0").format(pi); System.out.println(s2);//123.2 // 取小数点后3位,不足部分取0 String s3 = new DecimalFormat("0.000").format(pi); System.out.println(s3);//123.150 // 百分比 String s4 = new DecimalFormat("0.0%").format(pi); System.out.println(s4);// 12315.0% // 科学计数法 String s5 = new DecimalFormat("0.00E0").format(pi); System.out.println(s5); double d = 1234567; // 每三位以逗号分开 String s6 = new DecimalFormat(",000").format(d); System.out.println(s6); //小数点后3位,如果是0则不显示 String s7 = new DecimalFormat("#.###").format(123.300); System.out.println(s7);//123.3 } }