【44】java大数值剖析

基本的整数和浮点型精度不能满足需求,那么可以使用java.math中的两个类:BigInteger和BigDecimal。

BigInteger和BigDecimal介绍:

这两个类可以处理包含任意长度序列的数值。
BIgInteger类实现了任意精度的整数计算。BigDecimal实现了任意精度的浮点数计算。

使用静态的valueOf方法可以将普通的数值转化位大数值

BigInteger a = BigInteger.valueOf(100);

使用:

BIgInteger c = a.add(b);(c = a+b;)
BigInterger d = c.multiply(b.add(BigInteger.valueOf(2)));(d = c*(b+2));

BigInteger的API介绍:

add(BigInteger a)//加
subtract(BigInteger a)//减法
multiply(BigInteger a) //乘法
divide(BigInteger a)//除法
mod(BigInteger a)//求余
compareTo(BigInteger a)//等于返回0.小于负数,大于正数
valueOf(long x)//返回X的大整数

BigDecamal的API介绍:

add(BigDecimal a)//加
subtract(BigDecimal a) //减法
multiply(BigDecimal a)//乘法
divide(BigDecimal a)//除法
compareTo(BigDecimal a)//规则同BigIneger
valueOf(long x)

 

你可能感兴趣的:(【44】java大数值剖析)