如果基本的整型与浮点型不能满足需求,可以使用java.Math包提供的 BigInteger 和 BigDecimal 两个类,这两个类可以存储任意长度的数, BigInteger 实现的任意精度整数的计算,BigDecimal 实现了任意进度浮点数的计算。

使用valueOf方法可以将任意数装换为大数值。

BigInteger a = BigInteger.valueOf(100);

在计算时不能使用常见的数学操作符+,-,*,/ 而要使用该类的方法。如:

BigDecimal add(BigDecimal other)
• BigDecimal subtract(BigDecimal other)
• BigDecimal multiply(BigDecimal other)
• BigDecimal divide(BigDecimal other, RoundingMode mode)
05-07 15:56