Class Objects

java.lang.Object
java.util.Objects

public final class Objects extends Object

This is a compatibility class which supports the java.util.Objects API. On platforms that don't support this class (e.g. Android) the build server will automatically remap all uses of java.util.Objects to use this implementation instead.

This class consists of static utility methods for operating on objects. These utilities include null-safe or null-tolerant methods for computing the hash code of an object, returning a string for an object, and comparing two objects.

  • Method Details

    • equals

      public static boolean equals(Object a, Object b)

      Returns true if the arguments are equal to each other and false otherwise. Consequently, if both arguments are null, true is returned and if exactly one argument is null, false is returned. Otherwise, equality is determined by using the equals method of the first argument.

      Parameters
      • a

      • b

    • hashCode

      public static int hashCode(Object o)

      Returns the hash code of a non-null argument and 0 for a null argument.

      Parameters
      • o
    • toString

      public static String toString(Object o)
    • toString

      public static String toString(Object o, String nullDefault)
    • compare

      public static <T> int compare(T a, T b, Comparator<? super T> c)
    • requireNonNull

      public static <T> T requireNonNull(T obj)
    • requireNonNull

      public static <T> T requireNonNull(T obj, String message)
    • nonNull

      public static boolean nonNull(Object obj)
    • deepEquals

      public static boolean deepEquals(Object a, Object b)
    • hash

      public static int hash(Object... values)
    • isNull

      public static boolean isNull(Object obj)
      Whether obj is null.
    • requireNonNull

      public static <T> T requireNonNull(T obj, Supplier<String> messageSupplier)
      obj, or a NullPointerException whose message messageSupplier makes, only when it is needed.
    • requireNonNullElse

      public static <T> T requireNonNullElse(T obj, T defaultObj)

      obj, or defaultObj when obj is null.

      Throws
      • NullPointerException: if both are null
    • requireNonNullElseGet

      public static <T> T requireNonNullElseGet(T obj, Supplier<? extends T> supplier)

      obj, or what supplier gives when obj is null.

      Throws
      • NullPointerException: if obj is null and the supplier is null or gives null
    • checkIndex

      public static int checkIndex(int index, int length)

      index, if it lies in [0, length).

      Throws
      • IndexOutOfBoundsException: otherwise
    • checkIndex

      public static long checkIndex(long index, long length)
      index, if it lies in [0, length).
    • checkFromToIndex

      public static int checkFromToIndex(int fromIndex, int toIndex, int length)
      fromIndex, if [fromIndex, toIndex) lies in [0, length).
    • checkFromToIndex

      public static long checkFromToIndex(long fromIndex, long toIndex, long length)
      fromIndex, if [fromIndex, toIndex) lies in [0, length).
    • checkFromIndexSize

      public static int checkFromIndexSize(int fromIndex, int size, int length)
      fromIndex, if [fromIndex, fromIndex + size) lies in [0, length).
    • checkFromIndexSize

      public static long checkFromIndexSize(long fromIndex, long size, long length)
      fromIndex, if [fromIndex, fromIndex + size) lies in [0, length).
    • toIdentityString

      public static String toIdentityString(Object o)
      What Object.toString would answer for o, even when its class overrides it.