math里面的四舍五入

Math类中提供了三个与取整有关的方法:ceil、floor、round,这些方法的作用与它们的英文名称的含义相对应,
例如,ceil的英文意义是天花板,该方法就表示向上取整,
所以,Math.ceil(11.3)的结果为12,Math.ceil(-11.3)的结果是-11;floor的英文意义是地板,该方法就表示向下取整,
所以,
Math.floor(11.6)的结果为11,
Math.floor(-11.6)的结果是-12;
最难掌握的是round方法,它表示“四舍五入”,算法为Math.floor(x+0.5),即将原来的数字加上0.5后再向下取整,所以,Math.round(11.5)的结果为12,Math.round(-11.5)的结果为-11。

ceil 向上取整 
floor向下取整 
round四舍五入
在Java中,可以使用`java.lang.Math`类中的`round`方法来将一个`double`类型的数据进行四舍五入。这个方法会返回最接近参数值的长整型(`long`),参数是`double`类型。需要注意的是,`round`方法并不是直接对`double`类型进行四舍五入,而是先将`double`转换为`long`类型再进行四舍五入。 如果需要得到四舍五入后的`double`类型值,可以先使用`Math.round`方法,然后将结果转换回`double`类型,或者使用`BigDecimal`类,它可以更精确地控制小数的四舍五入行为。 以下是使用`Math`类进行四舍五入的一个简单示例: ```java double number = 3.14159; double roundedNumber = Math.round(number * 100) / 100.0; ``` 在这个示例中,我们首先将`number`乘以100,这样小数点后的第二位变成了个位数,然后调用`Math.round`方法进行四舍五入,最后再除以100.0将数值恢复为原来的小数点位数。 使用`BigDecimal`进行四舍五入可以这样做: ```java import java.math.BigDecimal; import java.math.RoundingMode; double number = 3.14159; BigDecimal bd = new BigDecimal(number); double roundedNumber = bd.setScale(2, RoundingMode.HALF_UP).doubleValue(); ``` 在这个示例中,我们创建了一个`BigDecimal`对象,并使用`setScale`方法指定小数点后的位数和四舍五入模式(`RoundingMode.HALF_UP`表示普通的四舍五入),然后通过`doubleValue`方法将`BigDecimal`对象转换为`double`类型。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值