BigInteger和BigDecimal可以说是acmer选择java的首要原因。
函数:add, subtract, divide, mod, compareTo等,其中加减乘除模都要求是BigInteger(BigDecimal)和BigInteger(BigDecimal)之间的运算,所以需要把int(double)类型转换为BigInteger(BigDecimal),用函数BigInteger.valueOf().
BigInteger
主要API
将字符串转换成BigInteger
BigInteger(String val) |
BigInteger(String val, int radix) |
BigInteger的加法
add(BigInteger val) | |
and(BigInteger val) |
BigInteger的减法
subtract(BigInteger val) |
BigInteger的乘法
multiply(BigInteger val) |
大数求余:
mod(BigInteger m) |
大数除法
divide(BigInteger val) |
其他一些
gcd(BigInteger val) |
max(BigInteger val) | |
min(BigInteger val) |
BigDecimal类
主要API:
将字符串转换成BigDecimal
BigDecimal(String val) |
BigDecimal(String val,MathContext mc) |
两个BigDecimal的相加
add(BigDecimal augend) | |
add(BigDecimal augend,MathContext mc) |
两个BigDecimal的相减
subtract(BigDecimal subtrahend) | |
subtract(BigDecimal subtrahend,MathContext mc) |
两个BigDecimal的相除:
divide(BigDecimal divisor) | |
divide(BigDecimal divisor, int roundingMode) | |
divide(BigDecimal divisor, int scale, int roundingMode) | |
divide(BigDecimal divisor, int scale,RoundingMode roundingMode) | |
divide(BigDecimal divisor,MathContext mc) | |
divide(BigDecimal divisor,RoundingMode roundingMode) |
计算BigDecimal的N次幂
pow(int n) | |
pow(int n, MathContext mc) |
有关转换成字符串的方法
toEngineeringString() | |
toPlainString() | |
toString() |