BigDecimal的setScale常用方法(ROUND_UP、ROUND_DOWN、ROUND_HALF_UP、ROUND_HALF_DOWN)


BigDecimal的setScale四大常用方法總結

// 設置小數點后第三位數字一大一小觀察效果
BigDecimal num = new BigDecimal("3.3235667");
BigDecimal numOne = new BigDecimal("3.3275667");

1、ROUND_UP:進位制:不管保留數字后面是大是小(0除外)都會進1

// ROUND_UP--進位制:不管保留數字后面是大是小(0除外)都會進1
BigDecimal num1 = num.setScale(2,BigDecimal.ROUND_UP);
System.out.println("SmallROUND_UP:"+num1);
BigDecimal numTwo = numOne.setScale(2,BigDecimal.ROUND_UP);
System.out.println("BigROUND_UP:"+numTwo);
打印結果:SmallROUND_UP:3.33
     BigROUND_UP:3.33

2、ROUND_DOWN:保留設置數字,后面所有直接去除

 // ROUND_DOWN--保留設置數字,后面所有直接去除

BigDecimal num2 = num.setScale(2,BigDecimal.ROUND_DOWN);
System.out.println("SmallROUND_DOWN:"+num2);
BigDecimal numThree = numOne.setScale(2,BigDecimal.ROUND_DOWN);
System.out.println("BigROUND_DOWN:"+numThree);

打印結果:SmallROUND_DOWN:3.32
     BigROUND_DOWN:3.32

3、ROUND_HALF_UP:根據保留數字后一位>=5進行四舍五入

// ROUND_HALF_UP--根據保留數字后一位>=5進行四舍五入
BigDecimal num3 = num.setScale(2,BigDecimal.ROUND_HALF_UP);
System.out.println("SmallROUND_HALF_UP:"+num3);
BigDecimal numFour = numOne.setScale(2,BigDecimal.ROUND_HALF_UP);
System.out.println("BigROUND_HALF_UP:"+numFour);
打印結果:SmallROUND_HALF_UP:3.32
     BigROUND_HALF_UP:3.33

4、ROUND_HALF_DOWN:根據保留數字后一位>5進行四舍五入

BigDecimal num4 = num.setScale(2,BigDecimal.ROUND_HALF_DOWN);
System.out.println("SmallROUND_HALF_DOWN:"+num4);
BigDecimal numFive = numOne.setScale(2,BigDecimal.ROUND_HALF_DOWN);
System.out.println("BigROUND_HALF_DOWN:"+numFive);
打印結果:SmallROUND_HALF_DOWN:3.32
     BigROUND_HALF_DOWN:3.33
希望大家有所收益!!!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM