@GwtCompatible public final class Objects extends Object
Object.
See the Guava User Guide on writing Object methods with Objects.
| Modifier and Type | Class and Description |
|---|---|
static class |
Objects
Deprecated.
Use
MoreObjects.ToStringHelper instead. This class is scheduled for removal in June 2016.
|
| Modifier and Type | Method and Description |
|---|---|
static boolean |
equal(Object
Determines whether two possibly-null objects are equal.
|
static <T> T |
firstNonNull(T first, T second)
Deprecated.
Use
MoreObjects instead. This method is scheduled for removal in June 2016.
|
static int |
hashCode(Object
Generates a hash code for multiple values.
|
static Objects |
toStringHelper(Class
Deprecated.
Use
MoreObjects instead. This method is scheduled for removal in June 2016.
|
static Objects |
toStringHelper(Object
Deprecated.
Use
MoreObjects instead. This method is scheduled for removal in June 2016.
|
static Objects |
toStringHelper(String
Deprecated.
Use
MoreObjects instead. This method is scheduled for removal in June 2016.
|
public static boolean equal(Objecta, Object b)
true if a and b are both null. true if a and b are both non-null and they are equal according to Object.equals(Object) . false in all other situations. This assumes that any non-null objects passed to this function conform to the equals() contract.
Note for Java 7 and later: This method should be treated as deprecated; use Objects instead.
public static int hashCode(Object... objects)
Arrays.hashCode(Object[]) . Note that array arguments to this method, with the exception of a single Object array, do not get any special handling; their hash codes are based on identity and not contents.
This is useful for implementing Object. For example, in an object that has three properties, x, y, and z, one could write:
public int hashCode() { return Objects.hashCode(getX(), getY(), getZ()); }
Warning: When a single object is supplied, the returned hash code does not equal the hash code of that object.
Note for Java 7 and later: This method should be treated as deprecated; use Objects instead.
@Deprecated public static Objects.ToStringHelper toStringHelper(Object self)
MoreObjects.toStringHelper(Object) instead. This method is scheduled for removal in June 2016.
Objects.ToStringHelper.
This is helpful for implementing Object. Specification by example:
// Returns "ClassName{}" Objects.toStringHelper(this) .toString(); // Returns "ClassName{x=1}" Objects.toStringHelper(this) .add("x", 1) .toString(); // Returns "MyObject{x=1}" Objects.toStringHelper("MyObject") .add("x", 1) .toString(); // Returns "ClassName{x=1, y=foo}" Objects.toStringHelper(this) .add("x", 1) .add("y", "foo") .toString(); // Returns "ClassName{x=1}" Objects.toStringHelper(this) .omitNullValues() .add("x", 1) .add("y", null) .toString(); }
Note that in GWT, class names are often obfuscated.
self - the object to generate the string for (typically
this), used only for its class name
@Deprecated public static Objects.ToStringHelper toStringHelper(Class <?> clazz)
MoreObjects.toStringHelper(Class) instead. This method is scheduled for removal in June 2016.
Objects.ToStringHelper in the same manner as
toStringHelper(Object), but using the name of
clazz instead of using an instance's
Object.getClass() .
Note that in GWT, class names are often obfuscated.
clazz - the
Class of the instance
@Deprecated public static Objects.ToStringHelper toStringHelper(String className)
MoreObjects.toStringHelper(String) instead. This method is scheduled for removal in June 2016.
Objects.ToStringHelper in the same manner as
toStringHelper(Object), but using
className instead of using an instance's
Object.getClass() .
className - the name of the instance type
@Deprecated public static <T> T firstNonNull(T first, T second)
MoreObjects.firstNonNull(T, T) instead. This method is scheduled for removal in June 2016.
null, if either is, or otherwise throws a
NullPointerException.
Note: if first is represented as an Optional, this can be accomplished with first.or(second). That approach also allows for lazy evaluation of the fallback instance, using first.or(Supplier).
first if
first is not
null, or
second if
first is
null and
second is not
null
NullPointerException - if both
first and
second were
null