| Modifier and Type | Method and Description | 
|---|---|
| static int | addAndCheck(int x,
           int y)Add two integers, checking for overflow. | 
| static long | addAndCheck(long a,
           long b)Add two long integers, checking for overflow. | 
| static int | divideUnsigned(int dividend,
              int divisor)Returns the unsigned quotient of dividing the first argument by
 the second where each argument and the result is interpreted as
 an unsigned value. | 
| static long | divideUnsigned(long dividend,
              long divisor)Returns the unsigned quotient of dividing the first argument by
 the second where each argument and the result is interpreted as
 an unsigned value. | 
| static int | gcd(int p,
   int q)Computes the greatest common divisor of the absolute value of two
 numbers, using a modified version of the "binary gcd" method. | 
| static long | gcd(long p,
   long q)Gets the greatest common divisor of the absolute value of two numbers,
 using the "binary gcd" method which avoids division and modulo
 operations. | 
| static boolean | isPowerOfTwo(long n)Returns true if the argument is a power of two. | 
| static int | lcm(int a,
   int b)Returns the least common multiple of the absolute value of two numbers,
 using the formula  lcm(a,b) = (a / gcd(a,b)) * b. | 
| static long | lcm(long a,
   long b)Returns the least common multiple of the absolute value of two numbers,
 using the formula  lcm(a,b) = (a / gcd(a,b)) * b. | 
| static int | mulAndCheck(int x,
           int y)Multiply two integers, checking for overflow. | 
| static long | mulAndCheck(long a,
           long b)Multiply two long integers, checking for overflow. | 
| static BigInteger | pow(BigInteger k,
   BigInteger e)Raise a BigInteger to a BigInteger power. | 
| static BigInteger | pow(BigInteger k,
   int e)Raise a BigInteger to an int power. | 
| static BigInteger | pow(BigInteger k,
   long e)Raise a BigInteger to a long power. | 
| static int | pow(int k,
   int e)Raise an int to an int power. | 
| static long | pow(long k,
   int e)Raise a long to an int power. | 
| static int | remainderUnsigned(int dividend,
                 int divisor)Returns the unsigned remainder from dividing the first argument
 by the second where each argument and the result is interpreted
 as an unsigned value. | 
| static long | remainderUnsigned(long dividend,
                 long divisor)Returns the unsigned remainder from dividing the first argument
 by the second where each argument and the result is interpreted
 as an unsigned value. | 
| static int | subAndCheck(int x,
           int y)Subtract two integers, checking for overflow. | 
| static long | subAndCheck(long a,
           long b)Subtract two long integers, checking for overflow. | 
public static int addAndCheck(int x,
                              int y)
                       throws MathRuntimeException
x - an addendy - an addendx+yMathRuntimeException - if the result can not be represented
 as an int.public static long addAndCheck(long a,
                               long b)
                        throws MathRuntimeException
a - an addendb - an addenda+bMathRuntimeException - if the result can not be represented as an longpublic static int gcd(int p,
                      int q)
               throws MathRuntimeException
gcd(Integer.MIN_VALUE, Integer.MIN_VALUE),
   gcd(Integer.MIN_VALUE, 0) and
   gcd(0, Integer.MIN_VALUE) throw an
   ArithmeticException, because the result would be 2^31, which
   is too large for an int value.gcd(x, x), gcd(0, x) and
   gcd(x, 0) is the absolute value of x, except
   for the special cases above.gcd(0, 0) is the only one which returns
   0.p - Number.q - Number.MathRuntimeException - if the result cannot be represented as
 a non-negative int value.public static long gcd(long p,
                       long q)
                throws MathRuntimeException
Special cases:
gcd(Long.MIN_VALUE, Long.MIN_VALUE),
 gcd(Long.MIN_VALUE, 0L) and
 gcd(0L, Long.MIN_VALUE) throw an
 ArithmeticException, because the result would be 2^63, which
 is too large for a long value.gcd(x, x), gcd(0L, x) and
 gcd(x, 0L) is the absolute value of x, except
 for the special cases above.
 gcd(0L, 0L) is the only one which returns
 0L.p - Number.q - Number.MathRuntimeException - if the result cannot be represented as
 a non-negative long value.public static int lcm(int a,
                      int b)
               throws MathRuntimeException
lcm(a,b) = (a / gcd(a,b)) * b.
 Special cases:
lcm(Integer.MIN_VALUE, n) and
 lcm(n, Integer.MIN_VALUE), where abs(n) is a
 power of 2, throw an ArithmeticException, because the result
 would be 2^31, which is too large for an int value.lcm(0, x) and lcm(x, 0) is
 0 for any x.
 a - Number.b - Number.MathRuntimeException - if the result cannot be represented as
 a non-negative int value.public static long lcm(long a,
                       long b)
                throws MathRuntimeException
lcm(a,b) = (a / gcd(a,b)) * b.
 Special cases:
lcm(Long.MIN_VALUE, n) and
 lcm(n, Long.MIN_VALUE), where abs(n) is a
 power of 2, throw an ArithmeticException, because the result
 would be 2^63, which is too large for an int value.lcm(0L, x) and lcm(x, 0L) is
 0L for any x.
 a - Number.b - Number.MathRuntimeException - if the result cannot be represented
 as a non-negative long value.public static int mulAndCheck(int x,
                              int y)
                       throws MathRuntimeException
x - Factor.y - Factor.x * y.MathRuntimeException - if the result can not be
 represented as an int.public static long mulAndCheck(long a,
                               long b)
                        throws MathRuntimeException
a - Factor.b - Factor.a * b.MathRuntimeException - if the result can not be represented
 as a long.public static int subAndCheck(int x,
                              int y)
                       throws MathRuntimeException
x - Minuend.y - Subtrahend.x - y.MathRuntimeException - if the result can not be represented
 as an int.public static long subAndCheck(long a,
                               long b)
                        throws MathRuntimeException
a - Value.b - Value.a - b.MathRuntimeException - if the result can not be represented as a
 long.public static int pow(int k,
                      int e)
               throws MathIllegalArgumentException,
                      MathRuntimeException
k - Number to raise.e - Exponent (must be positive or zero).MathIllegalArgumentException - if e < 0.MathRuntimeException - if the result would overflow.public static long pow(long k,
                       int e)
                throws MathIllegalArgumentException,
                       MathRuntimeException
k - Number to raise.e - Exponent (must be positive or zero).MathIllegalArgumentException - if e < 0.MathRuntimeException - if the result would overflow.public static BigInteger pow(BigInteger k, int e) throws MathIllegalArgumentException
k - Number to raise.e - Exponent (must be positive or zero).MathIllegalArgumentException - if e < 0.public static BigInteger pow(BigInteger k, long e) throws MathIllegalArgumentException
k - Number to raise.e - Exponent (must be positive or zero).MathIllegalArgumentException - if e < 0.public static BigInteger pow(BigInteger k, BigInteger e) throws MathIllegalArgumentException
k - Number to raise.e - Exponent (must be positive or zero).MathIllegalArgumentException - if e < 0.public static boolean isPowerOfTwo(long n)
n - the number to testpublic static int remainderUnsigned(int dividend,
                                    int divisor)
 This method does not use the long datatype.
dividend - the value to be divideddivisor - the value doing the dividingpublic static long remainderUnsigned(long dividend,
                                     long divisor)
 This method does not use the BigInteger datatype.
dividend - the value to be divideddivisor - the value doing the dividingpublic static int divideUnsigned(int dividend,
                                 int divisor)
 Note that in two's complement arithmetic, the three other
 basic arithmetic operations of add, subtract, and multiply are
 bit-wise identical if the two operands are regarded as both
 being signed or both being unsigned. Therefore separate addUnsigned, etc. methods are not provided.
 
 This method does not use the long datatype.
dividend - the value to be divideddivisor - the value doing the dividingpublic static long divideUnsigned(long dividend,
                                  long divisor)
 Note that in two's complement arithmetic, the three other
 basic arithmetic operations of add, subtract, and multiply are
 bit-wise identical if the two operands are regarded as both
 being signed or both being unsigned. Therefore separate addUnsigned, etc. methods are not provided.
 
 This method does not use the BigInteger datatype.
dividend - the value to be divideddivisor - the value doing the dividingCopyright © 2016–2020 Hipparchus.org. All rights reserved.