java中有关于DecimalFormat的使用

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u014338530/article/details/87929689

DecimalFormat用来格式化十进制数字,入保留小数,科学计算法等等。在DecimalFormat中,有以下几种特殊字符,基本含义解释如下:

0 代表一个任意数字,或者是在末尾补0
# 代表一个不包含0的任意数字
. 小数点占位符
分组分隔符占位符
- 减号或者负号,自动在数字前加负号
% 百分比计算,自动的
E 解学计算法

下面举个例子实验一下:

    @Test
    public void myTest(){
        double dd;
        dd = 0.966545;
        //保留一位小数,四舍五入
        System.out.println(new DecimalFormat("0.0").format(dd)); //1.0
        System.out.println(new DecimalFormat("0.#").format(dd)); //1
        System.out.println(new DecimalFormat("#.#").format(dd)); //1
        System.out.println(new DecimalFormat("#.0").format(dd)); //1.0
        //保留两位位小数,四舍五入
        System.out.println(new DecimalFormat("0.00").format(dd)); //0.97
        System.out.println(new DecimalFormat("0.##").format(dd)); //0.97
        System.out.println(new DecimalFormat("#.##").format(dd)); //0.97
        System.out.println(new DecimalFormat("#.00").format(dd)); //.97
        //百分比输出,保留两位小数
        dd = 0.999965;
        System.out.println(new DecimalFormat("0.00%").format(dd)); //100.00%
        System.out.println(new DecimalFormat("0.##%").format(dd)); //100%
        System.out.println(new DecimalFormat("#.##%").format(dd)); //100%
        System.out.println(new DecimalFormat("#.00%").format(dd)); //100.00%
        //将dd变为负数输出,保留两位小数
        System.out.println(new DecimalFormat("-0.00").format(dd)); //-1.00
        System.out.println(new DecimalFormat("-0.##").format(dd)); //-1
        System.out.println(new DecimalFormat("-#.##").format(dd)); //-1
        System.out.println(new DecimalFormat("-#.00").format(dd)); //-1.00
        /**当为#.#或者是#.##时,如果末尾为0,也就是说小数点之前或者之后为0,则会自动忽略0。**/
    }

猜你喜欢

转载自blog.csdn.net/u014338530/article/details/87929689