java中round函数怎么用_java四舍五入函数如何实现?

各种函数是java的精髓,熟练使用函数能极大的提高对项目的编码能力,本篇文章我们就来看看其中的四舍五入函数是怎么实现的。

java中我们可以使用java.math.BigDecimal来进行四舍五入,除此之外还能直接使用DecimalFormat来控制小数位数的精度来进行四舍五入。//使用DecimalFormat直接就可以控制小数的位数了

double resultVar = 1231231.1123682321;

DecimalFormat dfc = new DecimalFormat("#.######");

String cellContent = dfc.format(resultVar);

System.out.println(" cellContent " + cellContent);

在函数使用中,有时它会动态保留小数的位数,甚至在银行家算法中四舍五入并不完全是5入,所以在某些情况下我们就需要将3.155退位成3.15.

这时我们可以double d = value;

BigDecimal a = new BigDecimal(d);

//        BigDecimal a = new BigDecimal(String.valueOf(d));

System.out.println("a.setScale(2,2)=" + a.setScale(6, BigDecimal.ROUND_HALF_DOWN));BigDecimal.setScale() 方法用于格式化小数点setScale(1, BigDecimal.ROUND_DOWN) 直接删除多余的小数位, 如2 .35 会变成2 .3

setScale(1, BigDecimal.ROUND_UP) 进位处理, 2.35 变成2 .4

setScale(1, BigDecimal.ROUND_HALF_UP) 四舍五入, 2.35 变成2 .4

setScaler(1, BigDecimal.ROUND_HALF_DOWN) 四舍五入, 2.35 变成2 .3, 如果是5则向下舍

例:public class MathTest

{

public static void main(String[] args)

{

System.out.println("小数点后第一位=5");

System.out.println("正数:Math.round(11.5)=" + Math.round(11.5));

System.out.println("负数:Math.round(-11.5)=" + Math.round(-11.5));

System.out.println();

System.out.println("小数点后第一位<5");

System.out.println("正数:Math.round(11.46)=" + Math.round(11.46));

System.out.println("负数:Math.round(-11.46)=" + Math.round(-11.46));

System.out.println();

System.out.println("小数点后第一位>5");

System.out.println("正数:Math.round(11.68)=" + Math.round(11.68));

System.out.println("负数:Math.round(-11.68)=" + Math.round(-11.68));

}

}

以上就是本篇文章的所有内容,更多相关java实例敬请关注奇Q工具网了解详情。

推荐阅读:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值