This subclass of java.lang.Number represents integers that can be arbitrarily large--i.e., integers that are not limited to the 64 bits available with the long data type. BigInteger defines methods that duplicate the functionality of the standard Java arithmetic and bit-manipulation operators. The compareTo() method compares two BigInteger objects, and returns -1, 0, or 1 to indicate the result of the comparison.
The gcd(), modPow(), modInverse(), and isProbablePrime() methods perform advanced operations and are used primarily in cryptography and related algorithms.
public class BigInteger extends Number { // Public Constructors public BigInteger(byte[] val) throws NumberFormatException; public BigInteger(int signum, byte[] magnitude) throws NumberFormatException; public BigInteger(String val, int radix) throws NumberFormatException; public BigInteger(String val) throws NumberFormatException; public BigInteger(int numBits, Random rndSrc) throws IllegalArgumentException; public BigInteger(int bitLength, int certainty, Random rnd); // Class Methods public static BigInteger valueOf(long val); // Public Instance Methods public BigInteger abs(); public BigInteger add(BigInteger val) throws ArithmeticException; public BigInteger and(BigInteger val); public BigInteger andNot(BigInteger val); public int bitCount(); public int bitLength(); public BigInteger clearBit(int n) throws ArithmeticException; public int compareTo(BigInteger val); public BigInteger divide(BigInteger val) throws ArithmeticException; public BigInteger[] divideAndRemainder(BigInteger val) throws ArithmeticException; public double doubleValue(); // Defines Number public boolean equals(Object x); // Overrides Object public BigInteger flipBit(int n) throws ArithmeticException; public float floatValue(); // Defines Number public BigInteger gcd(BigInteger val); public int getLowestSetBit(); public int hashCode(); // Overrides Object public int intValue(); // Defines Number public boolean isProbablePrime(int certainty); public long longValue(); // Defines Number public BigInteger max(BigInteger val); public BigInteger min(BigInteger val); public BigInteger mod(BigInteger m); public BigInteger modInverse(BigInteger m) throws ArithmeticException; public BigInteger modPow(BigInteger exponent, BigInteger m); public BigInteger multiply(BigInteger val); public BigInteger negate(); public BigInteger not(); public BigInteger or(BigInteger val); public BigInteger pow(int exponent) throws ArithmeticException; public BigInteger remainder(BigInteger val) throws ArithmeticException; public BigInteger setBit(int n) throws ArithmeticException; public BigInteger shiftLeft(int n); public BigInteger shiftRight(int n); public int signum(); public BigInteger subtract(BigInteger val); public boolean testBit(int n) throws ArithmeticException; public byte[] toByteArray(); public String toString(int radix); public String toString(); // Overrides Object public BigInteger xor(BigInteger val); }
Object->Number(Serializable)->BigInteger
BigDecimal()
BigDecimal.toBigInteger()