Package javax.time

Class MathUtils

java.lang.Object
javax.time.MathUtils

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

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

    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 Details

    • MathUtils

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

    • 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:
      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:
      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:
      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:
      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:
      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:
      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:
      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:
      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:
      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:
      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:
      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:
      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:
      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:
      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)