public static void main(String[] args) {
//0第一種情況實際數字位數被占位符位數多的時候
//整數部分不動,小數部分四舍五入
String str="42.1521";
System.out.println(new DecimalFormat("0.0").format(new BigDecimal(str)));//42.2
System.out.println(new DecimalFormat("0.000").format(new BigDecimal(str)));//42.152
//0第二種情況實際數字位數比占位數少的的時候,整數部分和小數部分都會用0來替代
System.out.println("--------------------------------");
String str1="4.15";
System.out.println(new DecimalFormat("0000.0000").format(new BigDecimal(str1)));//0004.1500
System.out.println(new DecimalFormat("00.00").format(new BigDecimal(str1)));//04.15
//# 第一種情況,實際數字比占位符數字多的時候
//整數部分不動,小數部分四舍五入
System.out.println("--------------------------------");
String str2="4.15210";
System.out.println(new DecimalFormat("#.#").format(new BigDecimal(str2)));//4.2
System.out.println(new DecimalFormat("#.###").format(new BigDecimal(str2)));//4.152
System.out.println(new DecimalFormat("##.#####").format(new BigDecimal(str2)));//4.1521
//#第二種情況,實際數字位數比占位符數字少的時候
//整數部分和小數部分都不動(小數后面的0會抹去)
System.out.println("--------------------------------");
String str3="4.10";
System.out.println(new DecimalFormat("#.#").format(new BigDecimal(str3)));//4.1
System.out.println(new DecimalFormat("#.###").format(new BigDecimal(str3)));//4.1
System.out.println(new DecimalFormat("##.#####").format(new BigDecimal(str3)));//4.1
//總結一下其實當實際數字位數大於占位符的位數,0和#都會將小數部分四舍五入,
//當實際數字位數小於占位符位數時,#是不會補充位數的,0會將少的位數補上,並且#會將后面的0去掉
}
