写在最前
前言
BigInteger以及BigDecimal算是包装类型的范畴,但是没有对应的基本类型。
但是这两个类型和int或者float类型的操作类似,只不过得用api方法操作。
BigInteger
- 对应高精度的int整形,需要字符串形式将大数传入。
- 底层是通过一系列位操作,以及转字符串实现大数运算的。,
public class Test {
public static void main(String[] args) {
BigInteger num1 = new BigInteger("99999999999999999999999999999999999999");
BigInteger num2 = new BigInteger("99999999999999999999999999999999999999");
System.out.println(num1.add(num2));
}
}
输出:
怎么使用
- 因为是整数,所以除法是返回整数的,甚至还有余数。
- 注意如果除法需要余数可使用第8个方法
BigDecimal
- 可以传String,int以及double进入构造函数。
- 对应搞定度浮点型(带小数点),适合货币计算场景。
- 支持高精度小数的四舍五入!这一点在开发中经常使用。
看看代码:
- 除法可以保留指定小数,以及选择取舍小数的方式,这里是四舍五入
- 也可以用doubleValue()方法,将输出的大数转为double类型,如图所示。
怎么使用
【end…】