您好,登录后才能下订单哦!
密码登录
登录注册
点击 登录注册 即表示同意《亿速云用户服务条款》
在Java中,BigDecimal类提供了多种方法来进行进位和取整操作。以下是一些常用的方法:
向上取整(Ceiling):
使用setScale方法并指定舍入模式为RoundingMode.CEILING。
BigDecimal number = new BigDecimal("123.456");
BigDecimal ceiling = number.setScale(0, RoundingMode.CEILING);
System.out.println(ceiling); // 输出: 124
向下取整(Floor):
使用setScale方法并指定舍入模式为RoundingMode.FLOOR。
BigDecimal number = new BigDecimal("123.456");
BigDecimal floor = number.setScale(0, RoundingMode.FLOOR);
System.out.println(floor); // 输出: 123
四舍五入(Round):
使用setScale方法并指定舍入模式为RoundingMode.HALF_UP。
BigDecimal number = new BigDecimal("123.456");
BigDecimal rounded = number.setScale(2, RoundingMode.HALF_UP);
System.out.println(rounded); // 输出: 123.46
截断(Truncate):
使用setScale方法并指定舍入模式为RoundingMode.DOWN。
BigDecimal number = new BigDecimal("123.456");
BigDecimal truncated = number.setScale(2, RoundingMode.DOWN);
System.out.println(truncated); // 输出: 123.45
保留整数部分:
使用setScale方法并指定舍入模式为RoundingMode.DOWN,然后去掉小数部分。
BigDecimal number = new BigDecimal("123.456");
BigDecimal integerPart = number.setScale(0, RoundingMode.DOWN).stripTrailingZeros();
System.out.println(integerPart); // 输出: 123
以下是一个综合示例,展示了如何使用BigDecimal进行各种进位和取整操作:
import java.math.BigDecimal;
import java.math.RoundingMode;
public class BigDecimalExample {
public static void main(String[] args) {
BigDecimal number = new BigDecimal("123.456");
// 向上取整
BigDecimal ceiling = number.setScale(0, RoundingMode.CEILING);
System.out.println("Ceiling: " + ceiling); // 输出: Ceiling: 124
// 向下取整
BigDecimal floor = number.setScale(0, RoundingMode.FLOOR);
System.out.println("Floor: " + floor); // 输出: Floor: 123
// 四舍五入
BigDecimal rounded = number.setScale(2, RoundingMode.HALF_UP);
System.out.println("Rounded: " + rounded); // 输出: Rounded: 123.46
// 截断
BigDecimal truncated = number.setScale(2, RoundingMode.DOWN);
System.out.println("Truncated: " + truncated); // 输出: Truncated: 123.45
// 保留整数部分
BigDecimal integerPart = number.setScale(0, RoundingMode.DOWN).stripTrailingZeros();
System.out.println("Integer Part: " + integerPart); // 输出: Integer Part: 123
}
}
通过这些方法,你可以灵活地对BigDecimal对象进行进位和取整操作。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。