BigInteger

优质
小牛编辑
145浏览
2023-12-01

介绍 (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.方法和描述
1BigInteger abs()

此方法返回一个BigInteger,其值是此BigInteger的绝对值。

2BigInteger添加(BigInteger val)

此方法返回一个BigInteger,其值为(this + val)。

3BigInteger和(BigInteger val)

此方法返回一个BigInteger,其值为(this&val)。

4BigInteger和No(BigInteger val)

此方法返回一个BigInteger,其值为(this&~val)。

5int bitCount()

此方法返回此BigInteger的二进制补码表示中与其符号位不同的位数。

6int bitLength()

此方法返回此BigInteger的最小二进制补码表示中的位数,不包括符号位。

7BigInteger clearBit(int n)

此方法返回一个BigInteger,其值等于此BigInteger,并清除指定的位。

8int compareTo(BigInteger val)

此方法将此BigInteger与指定的BigInteger进行比较。

9BigInteger除以(BigInteger val)

此方法返回一个BigInteger,其值为(this/val)。

10BigInteger [] divideAndRemainder(BigInteger val)

此方法返回一个包含两个BigIntegers的数组,其中包含(this/val)后跟(this%val)。

11double doubleValue()

此方法将此BigInteger转换为double。

12boolean equals(Object x)

此方法将此BigInteger与指定的Object进行比较以获得相等性。

13BigInteger flipBit(int n)

此方法返回一个BigInteger,其值等于此BigInteger,并且指定的位被翻转。

14float floatValue()

此方法将此BigInteger转换为float。

15BigInteger gcd(BigInteger val)

此方法返回一个BigInteger,其值是abs(this)和abs(val)的最大公约数。

16int getLowestSetBit()

此方法返回此BigInteger中最右边(最低位)一位的索引(最右边一位右边的零位数)。

17int hashCode()

此方法返回此BigInteger的哈希码。

18int intValue()

此方法将此BigInteger转换为int。

19boolean isProbablePrime(int certainty)

如果此BigInteger可能是素数,则此方法返回true,如果它肯定是复合的,则返回false。

20long longValue()

此方法将此BigInteger转换为long。

21BigInteger max(BigInteger val)

此方法返回此BigInteger和val的最大值。

22BigInteger min(BigInteger val)

此方法返回此BigInteger和val的最小值。

23BigInteger mod(BigInteger m)

此方法返回一个BigInteger,其值为(此mod m)。

24BigInteger modInverse(BigInteger m)

此方法返回一个BigInteger,其值为(this -1 mod m)。

25BigInteger modPow(BigInteger指数,BigInteger m)

此方法返回一个BigInteger,其值为(this exponent mod m)。

26BigInteger乘以(BigInteger val)

此方法返回一个BigInteger,其值为(this * val)。

27BigInteger negate()

此方法返回一个BigInteger,其值为(-this)。

28BigInteger nextProbablePrime()

此方法返回大于此BigInteger的第一个整数,该整数可能是素数。

29BigInteger not()

此方法返回一个BigInteger,其值为(〜this)。

30BigInteger或(BigInteger val)

此方法返回一个BigInteger,其值为(this | val)。

31BigInteger pow(int exponent)

此方法返回一个BigInteger,其值为(此指数 )。

32static BigInteger probablePrime(int bitLength,Random rnd)

此方法使用指定的bitLength返回可能为素数的正BigInteger。

33BigInteger余数(BigInteger val)

此方法返回一个BigInteger,其值为(此%val)。

34BigInteger setBit(int n)

此方法返回一个BigInteger,其值等于此BigInteger且指定的位集。

35BigInteger shiftLeft(int n)

此方法返回一个BigInteger,其值为(this << n)。

36BigInteger shiftRight(int n)

此方法返回一个BigInteger,其值为(this >> n)。

37int signum()

此方法返回此BigInteger的signum函数。

38BigInteger减法(BigInteger val)

此方法返回一个BigInteger,其值为(this - val)。

39boolean testBit(int n)

当且仅当设置了指定位时,此方法返回true。

40byte [] toByteArray()

此方法返回一个包含此BigInteger的二进制补码表示的字节数组。

41String toString()

此方法返回此BigInteger的十进制String表示形式。

42String toString(int radix)

此方法返回给定基数中此BigInteger的String表示形式。

43static BigInteger valueOf(long val)

此方法返回一个BigInteger,其值等于指定long的值。

44BigInteger xor(BigInteger val)

此方法返回一个BigInteger,其值为(this ^ val)。