DecimalFormat數字格式化用法“0”和“#”的區別

weixin_30788239發表於2020-04-05

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

    }

}

 

轉載於:https://www.cnblogs.com/ampl/p/10589042.html

相關文章