# 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.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `Objects()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `static <T> int`
  `compare(T a, T b, Comparator<? super T> c)`
  `static boolean`
  `deepEquals(Object a, Object b)`
  `static boolean`
  `equals(Object a, Object b)`
  Returns true if the arguments are equal to each other and false otherwise.
  `static int`
  `hash(Object... values)`
  `static int`
  `hashCode(Object o)`
  Returns the hash code of a non-null argument and 0 for a null argument.
  `static boolean`
  `nonNull(Object obj)`
  `static <T> T`
  `requireNonNull(T obj)`
  `static <T> T`
  `requireNonNull(T obj, String message)`
  `static String`
  `toString(Object o)`
  `static String`
  `toString(Object o, String nullDefault)`

  ### Methods inherited from class Object

  `clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### Objects

    public 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)