BigInteger
介绍 (Introduction)
java.math.BigInteger类为所有Java的原始整数运算符和java.lang.Math中的所有相关方法提供操作类似物。
它还提供模块化算术,GCD计算,素性测试,素数生成,位操作以及一些其他杂项操作的操作。 所有操作都表现得好像BigIntegers用二进制补码表示法表示。
算术运算和按位逻辑运算的语义分别类似于Java的整数算术运算符和Java的逐位整数运算符。 移位操作的语义扩展了Java移位操作符的语义,以允许负移位距离。
比较操作执行有符号整数比较。 提供模块化算术运算以计算残差,执行取幂和计算乘法逆。 位操作在其操作数的二进制补码表示的单个位上操作。
当为任何输入参数传递null对象引用时,此类中的所有方法和构造函数都会抛出NullPointerException。
类声明
以下是java.math.BigInteger类的声明 -
public class BigInteger
extends Number
implements Comparable<BigInteger>
字段 (Field)
以下是java.math.BigInteger类的字段 -
static BigInteger ONE - BigInteger常量。
static BigInteger TEN - BigInteger常量十。
static BigInteger ZERO - BigInteger常量零。
类构造函数
Sr.No. | 构造函数和描述 |
---|---|
1 | BigInteger(byte[] val) 此构造函数用于将包含BigInteger的二进制补码表示形式的字节数组转换为BigInteger。 |
2 | BigInteger(int signum, byte[] magnitude) 此构造函数用于将BigInteger的符号幅度表示转换为BigInteger。 |
3 | BigInteger(int bitLength, int certainty, Random rnd) 此构造函数用于构造随机生成的正BigInteger,该BigInteger可能是素数,具有指定的bitLength。 |
4 | BigInteger(int numBits, Random rnd) 此构造函数用于构造随机生成的BigInteger,均匀分布在0到(2 numBits - 1)的范围内,包括0和(2 numBits - 1)。 |
5 | BigInteger(String val) 此构造函数用于将BigInteger的十进制String表示形式转换为BigInteger。 |
6 | BigInteger(String val, int radix) 此构造函数用于将指定基数中BigInteger的String表示形式转换为BigInteger。 |
类方法
Sr.No. | 方法和描述 |
---|---|
1 | BigInteger abs() 此方法返回一个BigInteger,其值是此BigInteger的绝对值。 |
2 | BigInteger添加(BigInteger val) 此方法返回一个BigInteger,其值为(this + val)。 |
3 | BigInteger和(BigInteger val) 此方法返回一个BigInteger,其值为(this&val)。 |
4 | BigInteger和No(BigInteger val) 此方法返回一个BigInteger,其值为(this&~val)。 |
5 | int bitCount() 此方法返回此BigInteger的二进制补码表示中与其符号位不同的位数。 |
6 | int bitLength() 此方法返回此BigInteger的最小二进制补码表示中的位数,不包括符号位。 |
7 | BigInteger clearBit(int n) 此方法返回一个BigInteger,其值等于此BigInteger,并清除指定的位。 |
8 | int compareTo(BigInteger val) 此方法将此BigInteger与指定的BigInteger进行比较。 |
9 | BigInteger除以(BigInteger val) 此方法返回一个BigInteger,其值为(this/val)。 |
10 | BigInteger [] divideAndRemainder(BigInteger val) 此方法返回一个包含两个BigIntegers的数组,其中包含(this/val)后跟(this%val)。 |
11 | double doubleValue() 此方法将此BigInteger转换为double。 |
12 | boolean equals(Object x) 此方法将此BigInteger与指定的Object进行比较以获得相等性。 |
13 | BigInteger flipBit(int n) 此方法返回一个BigInteger,其值等于此BigInteger,并且指定的位被翻转。 |
14 | float floatValue() 此方法将此BigInteger转换为float。 |
15 | BigInteger gcd(BigInteger val) 此方法返回一个BigInteger,其值是abs(this)和abs(val)的最大公约数。 |
16 | int getLowestSetBit() 此方法返回此BigInteger中最右边(最低位)一位的索引(最右边一位右边的零位数)。 |
17 | int hashCode() 此方法返回此BigInteger的哈希码。 |
18 | int intValue() 此方法将此BigInteger转换为int。 |
19 | boolean isProbablePrime(int certainty) 如果此BigInteger可能是素数,则此方法返回true,如果它肯定是复合的,则返回false。 |
20 | long longValue() 此方法将此BigInteger转换为long。 |
21 | BigInteger max(BigInteger val) 此方法返回此BigInteger和val的最大值。 |
22 | BigInteger min(BigInteger val) 此方法返回此BigInteger和val的最小值。 |
23 | BigInteger mod(BigInteger m) 此方法返回一个BigInteger,其值为(此mod m)。 |
24 | BigInteger modInverse(BigInteger m) 此方法返回一个BigInteger,其值为(this -1 mod m)。 |
25 | BigInteger modPow(BigInteger指数,BigInteger m) 此方法返回一个BigInteger,其值为(this exponent mod m)。 |
26 | BigInteger乘以(BigInteger val) 此方法返回一个BigInteger,其值为(this * val)。 |
27 | BigInteger negate() 此方法返回一个BigInteger,其值为(-this)。 |
28 | BigInteger nextProbablePrime() 此方法返回大于此BigInteger的第一个整数,该整数可能是素数。 |
29 | BigInteger not() 此方法返回一个BigInteger,其值为(〜this)。 |
30 | BigInteger或(BigInteger val) 此方法返回一个BigInteger,其值为(this | val)。 |
31 | BigInteger pow(int exponent) 此方法返回一个BigInteger,其值为(此指数 )。 |
32 | static BigInteger probablePrime(int bitLength,Random rnd) 此方法使用指定的bitLength返回可能为素数的正BigInteger。 |
33 | BigInteger余数(BigInteger val) 此方法返回一个BigInteger,其值为(此%val)。 |
34 | BigInteger setBit(int n) 此方法返回一个BigInteger,其值等于此BigInteger且指定的位集。 |
35 | BigInteger shiftLeft(int n) 此方法返回一个BigInteger,其值为(this << n)。 |
36 | BigInteger shiftRight(int n) 此方法返回一个BigInteger,其值为(this >> n)。 |
37 | int signum() 此方法返回此BigInteger的signum函数。 |
38 | BigInteger减法(BigInteger val) 此方法返回一个BigInteger,其值为(this - val)。 |
39 | boolean testBit(int n) 当且仅当设置了指定位时,此方法返回true。 |
40 | byte [] toByteArray() 此方法返回一个包含此BigInteger的二进制补码表示的字节数组。 |
41 | String toString() 此方法返回此BigInteger的十进制String表示形式。 |
42 | String toString(int radix) 此方法返回给定基数中此BigInteger的String表示形式。 |
43 | static BigInteger valueOf(long val) 此方法返回一个BigInteger,其值等于指定long的值。 |
44 | BigInteger xor(BigInteger val) 此方法返回一个BigInteger,其值为(this ^ val)。 |