【Java基础】第十八课:API---BigDecimal+BigInteger解决小数运算不精确以及超大数运算问题

本文介绍了Java中为了解决小数运算不精确和大整数运算问题所使用的BigDecimal和BigInteger类。BigDecimal通过避免二进制浮点误差来提供任意精度的十进制算术,适合处理货币和其他需要高精度的计算。BigInteger则用于处理超出普通整数范围的大整数运算。文章列举了构造方法和常用方法,并展示了使用示例。
摘要由CSDN通过智能技术生成

一:BigDecimal  解决小数运算不精确的问题

还记得我们学习八大基本类型的时候做的圆的周长和面积练习题中,如果将圆的半径设置成小数,经过几次计算,就可以看出,double 类型的运算是不精确的,原因是因为计算机只识别0和1,所以,double类型的数据要想进行计算,是需要转化成二进制的,而有些小数不能用二进制精确的表示出来,那么我们的计算机再用二进制进行计算的时候,用的就是错误的二进制,进而得出的结果也就是不精确的。想要解决这个问题,需要用到BigDecimal工具类来解决。

常用的构造方法:

小数类型:BigDecimal(double val) 

字符串类型:BigDecimal(String val) 

常用方法:

用法测试:


                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值