de.enough.polish.math
Class BigInteger

java.lang.Object
  extended by de.enough.polish.math.BigInteger

public class BigInteger
extends java.lang.Object

A replacement for the java.lang.BigInteger class that can be found on Java SE and EE.


Field Summary
static BigInteger ONE
           
static BigInteger ZERO
           
 
Constructor Summary
BigInteger(byte[] bval)
           
BigInteger(int sign, byte[] mag)
           
BigInteger(int bitLength, int certainty, java.util.Random rnd)
           
BigInteger(int numBits, java.util.Random rnd)
           
BigInteger(java.lang.String sval)
           
BigInteger(java.lang.String sval, int rdx)
           
 
Method Summary
 BigInteger abs()
           
 BigInteger add(BigInteger val)
           
 BigInteger and(BigInteger value)
           
 BigInteger andNot(BigInteger value)
           
 int bitCount()
           
 int bitLength()
           
 byte byteValue()
           
 BigInteger clearBit(int n)
           
 int compareTo(BigInteger val)
           
 int compareTo(java.lang.Object o)
           
 BigInteger divide(BigInteger val)
           
 BigInteger[] divideAndRemainder(BigInteger val)
           
 boolean equals(java.lang.Object val)
           
 BigInteger flipBit(int n)
           
 BigInteger gcd(BigInteger val)
           
 int getLowestSetBit()
           
 int hashCode()
           
 int intValue()
           
 boolean isProbablePrime(int certainty)
          return whether or not a BigInteger is probably prime with a probability of 1 - (1/2)**certainty.
 long longValue()
           
 BigInteger max(BigInteger val)
           
 BigInteger min(BigInteger val)
           
 BigInteger mod(BigInteger m)
           
 BigInteger modInverse(BigInteger m)
           
 BigInteger modPow(BigInteger exponent, BigInteger m)
           
 BigInteger multiply(BigInteger val)
           
 BigInteger negate()
           
 BigInteger not()
           
 BigInteger or(BigInteger value)
           
 BigInteger pow(int exp)
           
static BigInteger probablePrime(int bitLength, java.util.Random random)
           
 BigInteger remainder(BigInteger n)
           
 BigInteger setBit(int n)
           
 BigInteger shiftLeft(int n)
           
 BigInteger shiftRight(int n)
           
 int signum()
           
 BigInteger subtract(BigInteger val)
           
 boolean testBit(int n)
           
 byte[] toByteArray()
           
 java.lang.String toString()
           
 java.lang.String toString(int rdx)
           
static BigInteger valueOf(long val)
           
 BigInteger xor(BigInteger val)
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

ZERO

public static final BigInteger ZERO

ONE

public static final BigInteger ONE
Constructor Detail

BigInteger

public BigInteger(java.lang.String sval)
           throws java.lang.NumberFormatException
Throws:
java.lang.NumberFormatException

BigInteger

public BigInteger(java.lang.String sval,
                  int rdx)
           throws java.lang.NumberFormatException
Throws:
java.lang.NumberFormatException

BigInteger

public BigInteger(byte[] bval)
           throws java.lang.NumberFormatException
Throws:
java.lang.NumberFormatException

BigInteger

public BigInteger(int sign,
                  byte[] mag)
           throws java.lang.NumberFormatException
Throws:
java.lang.NumberFormatException

BigInteger

public BigInteger(int numBits,
                  java.util.Random rnd)
           throws java.lang.IllegalArgumentException
Throws:
java.lang.IllegalArgumentException

BigInteger

public BigInteger(int bitLength,
                  int certainty,
                  java.util.Random rnd)
           throws java.lang.ArithmeticException
Throws:
java.lang.ArithmeticException
Method Detail

abs

public BigInteger abs()

add

public BigInteger add(BigInteger val)
               throws java.lang.ArithmeticException
Throws:
java.lang.ArithmeticException

and

public BigInteger and(BigInteger value)

andNot

public BigInteger andNot(BigInteger value)

bitCount

public int bitCount()

bitLength

public int bitLength()

compareTo

public int compareTo(java.lang.Object o)

compareTo

public int compareTo(BigInteger val)

divide

public BigInteger divide(BigInteger val)
                  throws java.lang.ArithmeticException
Throws:
java.lang.ArithmeticException

divideAndRemainder

public BigInteger[] divideAndRemainder(BigInteger val)
                                throws java.lang.ArithmeticException
Throws:
java.lang.ArithmeticException

equals

public boolean equals(java.lang.Object val)
Overrides:
equals in class java.lang.Object

gcd

public BigInteger gcd(BigInteger val)

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

intValue

public int intValue()

byteValue

public byte byteValue()

isProbablePrime

public boolean isProbablePrime(int certainty)
return whether or not a BigInteger is probably prime with a probability of 1 - (1/2)**certainty.

From Knuth Vol 2, pg 395.

Parameters:
certainty -
Returns:

longValue

public long longValue()

max

public BigInteger max(BigInteger val)

min

public BigInteger min(BigInteger val)

mod

public BigInteger mod(BigInteger m)
               throws java.lang.ArithmeticException
Throws:
java.lang.ArithmeticException

modInverse

public BigInteger modInverse(BigInteger m)
                      throws java.lang.ArithmeticException
Throws:
java.lang.ArithmeticException

modPow

public BigInteger modPow(BigInteger exponent,
                         BigInteger m)
                  throws java.lang.ArithmeticException
Throws:
java.lang.ArithmeticException

multiply

public BigInteger multiply(BigInteger val)

negate

public BigInteger negate()

not

public BigInteger not()

pow

public BigInteger pow(int exp)
               throws java.lang.ArithmeticException
Throws:
java.lang.ArithmeticException

probablePrime

public static BigInteger probablePrime(int bitLength,
                                       java.util.Random random)

remainder

public BigInteger remainder(BigInteger n)
                     throws java.lang.ArithmeticException
Throws:
java.lang.ArithmeticException

shiftLeft

public BigInteger shiftLeft(int n)

shiftRight

public BigInteger shiftRight(int n)

signum

public int signum()

subtract

public BigInteger subtract(BigInteger val)

toByteArray

public byte[] toByteArray()

xor

public BigInteger xor(BigInteger val)

or

public BigInteger or(BigInteger value)

setBit

public BigInteger setBit(int n)
                  throws java.lang.ArithmeticException
Throws:
java.lang.ArithmeticException

clearBit

public BigInteger clearBit(int n)
                    throws java.lang.ArithmeticException
Throws:
java.lang.ArithmeticException

flipBit

public BigInteger flipBit(int n)
                   throws java.lang.ArithmeticException
Throws:
java.lang.ArithmeticException

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

toString

public java.lang.String toString(int rdx)

valueOf

public static BigInteger valueOf(long val)

getLowestSetBit

public int getLowestSetBit()

testBit

public boolean testBit(int n)
                throws java.lang.ArithmeticException
Throws:
java.lang.ArithmeticException