Package javax.time

Class MathUtils


  • public final class MathUtils
    extends java.lang.Object
    These methods are proposed for java.lang.Math.
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      private MathUtils()
      Private constructor since this is a utility class.
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static int floorDiv​(int a, int b)
      Returns the floor division.
      static long floorDiv​(long a, long b)
      Returns the floor division.
      static int floorMod​(int a, int b)
      Returns the floor modulus.
      static int floorMod​(long a, int b)
      Returns the floor modulus.
      static long floorMod​(long a, long b)
      Returns the floor modulus.
      static int safeAdd​(int a, int b)
      Safely adds two int values.
      static long safeAdd​(long a, long b)
      Safely adds two long values.
      static int safeCompare​(int a, int b)
      Safely compare one int with another.
      static int safeCompare​(long a, long b)
      Safely compare one long with another.
      static int safeDecrement​(int value)
      Safely decrements an int.
      static long safeDecrement​(long value)
      Safely decrements a long.
      static int safeIncrement​(int value)
      Safely increments an int.
      static long safeIncrement​(long value)
      Safely increments a long.
      static int safeMultiply​(int a, int b)
      Safely multiply one int by another.
      static long safeMultiply​(long a, int b)
      Safely multiply a long by an int.
      static long safeMultiply​(long a, long b)
      Multiply two values throwing an exception if overflow occurs.
      static int safeNegate​(int value)
      Negates the input value, throwing an exception if an overflow occurs.
      static long safeNegate​(long value)
      Negates the input value, throwing an exception if an overflow occurs.
      static int safeSubtract​(int a, int b)
      Safely subtracts one int from another.
      static long safeSubtract​(long a, long b)
      Safely subtracts one long from another.
      static int safeToInt​(long value)
      Safely convert a long to an int.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • MathUtils

        private MathUtils()
        Private constructor since this is a utility class.
    • Method Detail

      • safeNegate

        public static int safeNegate​(int value)
        Negates the input value, throwing an exception if an overflow occurs.
        Parameters:
        value - the value to negate
        Returns:
        the negated value
        Throws:
        java.lang.ArithmeticException - if the value is MIN_VALUE and cannot be negated
      • safeNegate

        public static long safeNegate​(long value)
        Negates the input value, throwing an exception if an overflow occurs.
        Parameters:
        value - the value to negate
        Returns:
        the negated value
        Throws:
        java.lang.ArithmeticException - if the value is MIN_VALUE and cannot be negated
      • safeAdd

        public static int safeAdd​(int a,
                                  int b)
        Safely adds two int values.
        Parameters:
        a - the first value
        b - the second value
        Returns:
        the result
        Throws:
        java.lang.ArithmeticException - if the result overflows an int
      • safeAdd

        public static long safeAdd​(long a,
                                   long b)
        Safely adds two long values.
        Parameters:
        a - the first value
        b - the second value
        Returns:
        the result
        Throws:
        java.lang.ArithmeticException - if the result overflows a long
      • safeSubtract

        public static int safeSubtract​(int a,
                                       int b)
        Safely subtracts one int from another.
        Parameters:
        a - the first value
        b - the second value to subtract from the first
        Returns:
        the result
        Throws:
        java.lang.ArithmeticException - if the result overflows an int
      • safeSubtract

        public static long safeSubtract​(long a,
                                        long b)
        Safely subtracts one long from another.
        Parameters:
        a - the first value
        b - the second value to subtract from the first
        Returns:
        the result
        Throws:
        java.lang.ArithmeticException - if the result overflows a long
      • safeMultiply

        public static int safeMultiply​(int a,
                                       int b)
        Safely multiply one int by another.
        Parameters:
        a - the first value
        b - the second value
        Returns:
        the result
        Throws:
        java.lang.ArithmeticException - if the result overflows an int
      • safeMultiply

        public static long safeMultiply​(long a,
                                        int b)
        Safely multiply a long by an int.
        Parameters:
        a - the first value
        b - the second value
        Returns:
        the new total
        Throws:
        java.lang.ArithmeticException - if the result overflows a long
      • safeMultiply

        public static long safeMultiply​(long a,
                                        long b)
        Multiply two values throwing an exception if overflow occurs.
        Parameters:
        a - the first value
        b - the second value
        Returns:
        the new total
        Throws:
        java.lang.ArithmeticException - if the result overflows a long
      • safeIncrement

        public static int safeIncrement​(int value)
        Safely increments an int.
        Parameters:
        value - the value to increment
        Returns:
        the result
        Throws:
        java.lang.ArithmeticException - if the result overflows a long
      • safeIncrement

        public static long safeIncrement​(long value)
        Safely increments a long.
        Parameters:
        value - the value to increment
        Returns:
        the result
        Throws:
        java.lang.ArithmeticException - if the result overflows a long
      • safeDecrement

        public static int safeDecrement​(int value)
        Safely decrements an int.
        Parameters:
        value - the value to decrement
        Returns:
        the result
        Throws:
        java.lang.ArithmeticException - if the result overflows a long
      • safeDecrement

        public static long safeDecrement​(long value)
        Safely decrements a long.
        Parameters:
        value - the value to decrement
        Returns:
        the result
        Throws:
        java.lang.ArithmeticException - if the result overflows a long
      • safeToInt

        public static int safeToInt​(long value)
        Safely convert a long to an int.
        Parameters:
        value - the value to convert
        Returns:
        the int value
        Throws:
        java.lang.ArithmeticException - if the result overflows an int
      • safeCompare

        public static int safeCompare​(int a,
                                      int b)
        Safely compare one int with another.
        Parameters:
        a - the first value
        b - the second value
        Returns:
        negative if a is less than b, positive if a is greater than b, zero if equal
      • safeCompare

        public static int safeCompare​(long a,
                                      long b)
        Safely compare one long with another.
        Parameters:
        a - the first value
        b - the second value
        Returns:
        negative if a is less than b, positive if a is greater than b, zero if equal
      • floorDiv

        public static long floorDiv​(long a,
                                    long b)
        Returns the floor division.

        This returns 0 for floorDiv(0, 4).
        This returns -1 for floorDiv(-1, 4).
        This returns -1 for floorDiv(-2, 4).
        This returns -1 for floorDiv(-3, 4).
        This returns -1 for floorDiv(-4, 4).
        This returns -2 for floorDiv(-5, 4).

        Parameters:
        a - the dividend
        b - the divisor
        Returns:
        the floor division
      • floorMod

        public static long floorMod​(long a,
                                    long b)
        Returns the floor modulus.

        This returns 0 for floorMod(0, 4).
        This returns 1 for floorMod(-1, 4).
        This returns 2 for floorMod(-2, 4).
        This returns 3 for floorMod(-3, 4).
        This returns 0 for floorMod(-4, 4).

        Parameters:
        a - the dividend
        b - the divisor
        Returns:
        the floor modulus (positive)
      • floorMod

        public static int floorMod​(long a,
                                   int b)
        Returns the floor modulus.

        This returns 0 for floorMod(0, 4).
        This returns 3 for floorMod(-1, 4).
        This returns 2 for floorMod(-2, 4).
        This returns 1 for floorMod(-3, 4).
        This returns 0 for floorMod(-4, 4).
        This returns 3 for floorMod(-5, 4).

        Parameters:
        a - the dividend
        b - the divisor
        Returns:
        the floor modulus (positive)
      • floorDiv

        public static int floorDiv​(int a,
                                   int b)
        Returns the floor division.

        This returns 0 for floorDiv(0, 4).
        This returns -1 for floorDiv(-1, 4).
        This returns -1 for floorDiv(-2, 4).
        This returns -1 for floorDiv(-3, 4).
        This returns -1 for floorDiv(-4, 4).
        This returns -2 for floorDiv(-5, 4).

        Parameters:
        a - the dividend
        b - the divisor
        Returns:
        the floor division
      • floorMod

        public static int floorMod​(int a,
                                   int b)
        Returns the floor modulus.

        This returns 0 for floorMod(0, 4).
        This returns 1 for floorMod(-1, 4).
        This returns 2 for floorMod(-2, 4).
        This returns 3 for floorMod(-3, 4).
        This returns 0 for floorMod(-4, 4).

        Parameters:
        a - the dividend
        b - the divisor
        Returns:
        the floor modulus (positive)