📅  最后修改于: 2023-12-03 14:42:21.294000             🧑  作者: Mango
java.math.BigInteger
类是Java的一个内置类,它提供了对任意大小整数值的操作和运算。该类可以处理大于Java长整型的整数值,即使这些值无限大。
创建BigInteger
实例有多种方式:
通过传递一个字符串或一个字符数组来创建一个BigInteger
实例,如下所示:
BigInteger bigInteger = new BigInteger("1234567890");
BigInteger anotherBigInteger = new BigInteger(new char[]{'1', '2', '3', '4', '5', '6', '7', '8', '9', '0'});
通过传递一个long
类型的值来创建一个BigInteger
实例,如下所示:
BigInteger bigInteger = BigInteger.valueOf(1234567890L);
BigInteger
类提供了一系列运算方法,例如加、减、乘和除等。这些方法都是用BigInteger
对象调用的,例如:
BigInteger a = new BigInteger("1234567890");
BigInteger b = BigInteger.valueOf(987654321);
// 加法
a = a.add(b);
// 减法
a = a.subtract(b);
// 乘法
a = a.multiply(b);
// 除法
a = a.divide(b);
除了基本的加、减、乘和除法之外,BigInteger
类还提供了其他常用的运算方法,例如取模和幂运算等。例如:
BigInteger a = new BigInteger("1234567890");
BigInteger b = BigInteger.valueOf(987654321);
// 取模
a = a.mod(b);
// 幂运算
a = a.pow(3); // 计算 a 的 3 次幂
BigInteger
类还提供了进行比较的方法,包括compareTo()
、equals()
和intValue()
等:
BigInteger a = new BigInteger("1234567890");
BigInteger b = new BigInteger("2345678901");
// 比较
if (a.compareTo(b) < 0) {
// a < b
} else if (a.compareTo(b) > 0) {
// a > b
} else {
// a == b
}
// 相等性
if (a.equals(b)) {
// a == b
}
// 转换成基本类型
int i = a.intValue();
java.math.BigInteger
类提供了对任意大小整数值的操作和运算。该类可以处理大于Java长整型的整数值,即使这些值无限大。使用它可以轻松地进行各种整数运算,包括加、减、乘、除、取模和幂运算等。