DecimalFormat的使用

参考博客:

https://blog.csdn.net/weixin_42721317/article/details/115675707

https://www.jianshu.com/p/b3699d73142e

一、保留两位小数

public class TestDecimal {

    public static void main(String[] args) {
        //保留两位小数(截断)
        double num = 11.256;
        DecimalFormat df = new DecimalFormat("#.##");
        df.setRoundingMode(RoundingMode.DOWN);
        String str = df.format(num);
        System.out.println(str);        //11.25

        //保留两位小数(四舍五入)
        df.setRoundingMode(RoundingMode.HALF_UP);
        str = df.format(num);
        System.out.println(str);        //11.26
    }

}

 

二、占位符      

0表示数字占位符,实际位数不够时补零
比实际数字的位数多,不足的地方用0补上。
new DecimalFormat(“00.00”).format(3.14) //结果:03.14
new DecimalFormat(“0.000”).format(3.14) //结果: 3.140
new DecimalFormat(“00.000”).format(3.14) //结果:03.140
整数部分比实际数字的位数少,整数部分不改动
小数部分比实际数字的位数少,根据小数部分占位符数量保留小数
new DecimalFormat(“0.000”).format(13.146) //结果:13.146
new DecimalFormat(“00.00”).format(13.146) //结果:13.15
new DecimalFormat(“0.00”).format(13.146) //结果:13.15
#表示数字占位符,实际位数不够时不补零
比实际数字的位数多,不变
new DecimalFormat("##.##").format(3.14) //结果:3.14
new DecimalFormat("#.###").format(3.14) //结果: 3.14
new DecimalFormat("##.###").format(3.14) //结果:3.14
整数部分比实际数字的位数少,整数部分不改动
小数部分比实际数字的位数少,根据小数部分占位符数量保留小数
new DecimalFormat("#.###").format(13.146) //结果:13.146
new DecimalFormat("##.##").format(13.146) //结果:13.15
new DecimalFormat("#.##").format(13.146) //结果:13.15

 

 

 

 

--

posted on 2023-04-08 13:59  有点懒惰的大青年  阅读(72)  评论(0编辑  收藏  举报