BigDecimal类提供了多种舍入模式,可以使用setRoundingMode方法来设置舍入模式。以下是几种常用的舍入模式及其代码示例:
BigDecimal number = new BigDecimal("2.345");
BigDecimal roundedNumber = number.setScale(2, RoundingMode.UP);
System.out.println(roundedNumber); // 输出:2.35
BigDecimal number = new BigDecimal("2.345");
BigDecimal roundedNumber = number.setScale(2, RoundingMode.DOWN);
System.out.println(roundedNumber); // 输出:2.34
BigDecimal number = new BigDecimal("2.345");
BigDecimal roundedNumber = number.setScale(2, RoundingMode.HALF_UP);
System.out.println(roundedNumber); // 输出:2.35
BigDecimal number = new BigDecimal("2.345");
BigDecimal roundedNumber = number.setScale(2, RoundingMode.HALF_DOWN);
System.out.println(roundedNumber); // 输出:2.34
BigDecimal number = new BigDecimal("2.345");
BigDecimal roundedNumber = number.setScale(2, RoundingMode.HALF_EVEN);
System.out.println(roundedNumber); // 输出:2.34
这些舍入模式可以根据具体需求选择使用,可以根据BigDecimal类的setScale方法设置小数位数和舍入模式来进行舍入操作。