Java番外篇4——BigInteger与BigDecimal
为了解决大数运算的问题
- 操作整型:BigInteger
- 操作小数:BigDecimal
1、BigInteger
| 方法声明 | 功能介绍 |
|---|---|
| public BigInteger abs() | 返回大整数的绝对值 |
| public BigInteger add(BigInteger val) | 返回两个大整数的和 |
| public BigInteger and(BigInteger val) | 返回两个大整数的按位与的结果 |
| public BigInteger andNot(BigInteger val) | 返回两个大整数与非的结果 |
| public BigInteger divide(BigInteger val) | 返回两个大整数的商 |
| public BigInteger[] divideAndRemainder(BigInteger val) | 返回两个大整数的商和余数 |
| public double doubleValue() | 返回大整数的double类型的值 |
| public float floatValue() | 返回大整数的float类型的值 |
| public BigInteger gcd(BigInteger val) | 返回大整数的最大公约数 |
| public int intValue() | 返回大整数的整型值 |
| public long longValue() | 返回大整数的long型值 |
| public BigInteger max(BigInteger val) | 返回两个大整数的最大者 |
| public BigInteger min(BigInteger val) | 返回两个大整数的最小者 |
| public BigInteger mod(BigInteger val) | 用当前大整数对val求模 |
| public BigInteger multiply(BigInteger val) | 返回两个大整数的积 |
| public BigInteger negate() | 返回当前大整数的相反数 |
| public BigInteger not() | 返回当前大整数的非 |
| public BigInteger or(BigInteger val) | 返回两个大整数的按位或 |
| public BigInteger pow(int exponent) | 返回当前大整数的exponent次方 |
| public BigInteger remainder(BigInteger val) | 返回当前大整数除以val的余数 |
| public BigInteger leftShift(int n) | 将当前大整数左移n位后返回 |
| public BigInteger rightShift(int n) | 将当前大整数右移n位后返回 |
| public BigInteger subtract(BigInteger val) | 返回两个大整数相减的结果 |
| public byte[] toByteArray(BigInteger val) | 将大整数转换成二进制反码保存在byte数组中 |
| public String toString() | 将当前大整数转换成十进制的字符串形式 |
| public BigInteger xor(BigInteger val) | 返回两个大整数的异或 |
2、BigDecimal
| 方法声明 | 功能介绍 |
|---|---|
| BigDecimal abs() | 返回大浮点数的绝对值 |
| BigDecimal negate() | 返回大浮点数的相反数 |
| BigDecimal add(BigDecimal augend) | 返回两个大浮点数的和 |
| BigDecimal subtract(BigDecimal subtrahend) | 返回两个大浮点数的差 |
| BigDecimal multiply(BigDecimal multiplicand) | 返回两个大浮点数的积 |
| BigDecimal divide(BigDecimal divisor) | 返回两个大浮点数的商 |
| BigDecimal[] divideAndRemainder(BigDecimal divisor) | 返回两个大浮点数的商和余数 |
| double doubleValue() | 将此BigDecimal转换为double |
| float floatValue() | 将此BigDecimal转换为 float |
| int intValue() | 将此BigDecimal转换为int |
| long longValue() | 将此BigDecimal转换为 long |
| BigDecimal divideToIntegralValue(BigDecimal divisor) | 返回一个BigDecimal ,它的值是BigDecimal的整数部分 |
| BigDecimal max(BigDecimal val) | 返回两个大浮点数较大的数字 |
| BigDecimal min(BigDecimal val) | 返回两个大浮点数较大的数字 |
| BigDecimal movePointLeft(int n) | 将当前大浮点数左移n位后返回 |
| BigDecimal movePointRight(int n) | 将当前大浮点数右移n位后返回 |
| BigDecimal remainder(BigDecimal divisor) | 返回两个大浮点数的商的余数 |