我是靠谱客的博主 苗条西装,最近开发中收集的这篇文章主要介绍关于BigDecimal常量的使用ROUND_UP,ROUND_DOWN,ROUND_HALF_UP,ROUND_HALF_DOWN,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

ROUND_UP

截断的小数>0时进一位

        //ROUND_UP
        BigDecimal zero = new BigDecimal("1.0750000");
        BigDecimal one = new BigDecimal("1.0750001");
    
        BigDecimal two = zero.setScale(3,BigDecimal.ROUND_UP);
        BigDecimal three = one.setScale(3,BigDecimal.ROUND_UP);

        System.out.println("two="+two); //two=1.075
        System.out.println("three="+three); //three=1.076

 ROUND_DOWN

 直接舍弃截断的小数,不在小数位上进一位,不管舍弃的数值有多大

        BigDecimal zero = new BigDecimal("1.0740000");
        BigDecimal one = new BigDecimal("1.0790001");

        BigDecimal two = zero.setScale(2,BigDecimal.ROUND_DOWN);
        BigDecimal three = one.setScale(2,BigDecimal.ROUND_DOWN);
        System.out.println("two="+two);
        System.out.println("three="+three);

        two=1.07
        three=1.07

 ROUND_HALF_UP

 四舍五入,数学意义上的四舍五入

        BigDecimal zero = new BigDecimal("1.0740000");
        BigDecimal one = new BigDecimal("1.0790001");

        BigDecimal two = zero.setScale(2,BigDecimal.ROUND_HALF_UP);
        BigDecimal three = one.setScale(2,BigDecimal.ROUND_HALF_UP);
        System.out.println("two="+two);
        System.out.println("three="+three);

        two=1.07
        three=1.08

 ROUND_HALF_DOWN

一开始我以为这个是五舍六入,其实不是

当截取掉的小数位的值>=5,且5后面还有>0的值,就会进一位

        BigDecimal zero = new BigDecimal("1.0740001");
        BigDecimal one = new BigDecimal("1.075000");
        BigDecimal one1 = new BigDecimal("1.075001");

        BigDecimal two = zero.setScale(2,BigDecimal.ROUND_HALF_DOWN);
        BigDecimal three = one.setScale(2,BigDecimal.ROUND_HALF_DOWN);
        BigDecimal three1 = one1.setScale(2,BigDecimal.ROUND_HALF_DOWN);
        System.out.println("two="+two);
        System.out.println("three="+three);
        System.out.println("three1="+three1);

        two=1.07
        three=1.07
        three1=1.08

最后

以上就是苗条西装为你收集整理的关于BigDecimal常量的使用ROUND_UP,ROUND_DOWN,ROUND_HALF_UP,ROUND_HALF_DOWN的全部内容,希望文章能够帮你解决关于BigDecimal常量的使用ROUND_UP,ROUND_DOWN,ROUND_HALF_UP,ROUND_HALF_DOWN所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(56)

评论列表共有 0 条评论

立即
投稿
返回
顶部