@GwtCompatible public final class MoreObjects extends Object
Object, and are not already provided in
Objects.
See the Guava User Guide on writing Object methods with MoreObjects.
Objects)
| Modifier and Type | Class and Description |
|---|---|
static class |
MoreObjects
Support class for
toStringHelper(java.lang.Object).
|
| Modifier and Type | Method and Description |
|---|---|
static <T> T |
firstNonNull(T first, T second)
Returns the first of two given parameters that is not
null, if either is, or otherwise throws a
NullPointerException.
|
static MoreObjects |
toStringHelper(Class
Creates an instance of
MoreObjects.ToStringHelper in the same manner as
toStringHelper(Object), but using the simple name of
clazz instead of using an instance's
Object.
|
static MoreObjects |
toStringHelper(Object
Creates an instance of
MoreObjects.ToStringHelper.
|
static MoreObjects |
toStringHelper(String
Creates an instance of
MoreObjects.ToStringHelper in the same manner as
toStringHelper(Object), but using
className instead of using an instance's
Object.
|
public static <T> T firstNonNull(T first,
T second)
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 it is non-null; otherwise
second if it is non-null
NullPointerException - if both
first and
second are null
Objects.firstNonNull().
public static MoreObjects.ToStringHelper toStringHelper(Object self)
MoreObjects.ToStringHelper.
This is helpful for implementing Object. Specification by example:
// Returns "ClassName{}" MoreObjects.toStringHelper(this) .toString(); // Returns "ClassName{x=1}" MoreObjects.toStringHelper(this) .add("x", 1) .toString(); // Returns "MyObject{x=1}" MoreObjects.toStringHelper("MyObject") .add("x", 1) .toString(); // Returns "ClassName{x=1, y=foo}" MoreObjects.toStringHelper(this) .add("x", 1) .add("y", "foo") .toString(); // Returns "ClassName{x=1}" MoreObjects.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
Objects.toStringHelper().
public static MoreObjects.ToStringHelper toStringHelper(Class <?> clazz)
MoreObjects.ToStringHelper in the same manner as
toStringHelper(Object), but using the simple 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
Objects.toStringHelper().
public static MoreObjects.ToStringHelper toStringHelper(String className)
MoreObjects.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
Objects.toStringHelper().