3.9大数值
如果基本整数和浮点数精度不能满足需求,那么可以使用java.math包中的BigInteger和BigDecimal两个类。
这两个类可以处理包含任意长度数字序列的数值。BigInteger类实现了任意精度的整数运算,BigDecimal实现了任意精度的浮点数运算。
先来一个静态方法
static BigInteger valueOf(long x);
BigInteger a=BigInteger.valueOf(100);
将普通的数值转换为大数值。
常用方法:
BigInteger add(BigInteger other) 加
BigInteger subtract(BigInteger other)减
BigInteger multiply(BigInteger other)乘
BigInteger divide(BigInteger other)除
不能用常见的算术运算符对大数值运算
BigDecimal使用方法与BigInteger 类似。
附上一个小例子 计算2的100次方
public class Print {
public static void main(String[] args) {
BigInteger a=BigInteger.valueOf(2);
for (int i = 0; i < 100; i++) {
a=a.multiply(BigInteger.valueOf(2));
}
System.out.println(a);//2535301200456458802993406410752
}
}