compact1, compact2, compact3
java.util
Class Objects- java.lang.Object
-
- java.util.ObjectsObjects
-
public final class Objects Objects extends Object
-
该类由static用于对对象进行static实用方法组成。 这些实用程序包括用于计算对象的哈希码的null -safe或null方法,为对象返回一个字符串,并比较两个对象。
从以下版本开始:
1.7
-
- 方法摘要
所有方法 静态方法 具体的方法 Modifier and Type Method and Description static int compare(T a, T b, Comparator super T> c) 返回0,如果参数都是相同的, c.compare(a, b)其他。
static boolean deepEquals(Object a, Object b) 返回 true如果参数是深层相等,彼此 false其他。
static boolean equals(Object a, Object b) 返回 true如果参数相等,彼此 false其他。
static int hash(Object... values) 为输入值序列生成哈希码。
static int hashCode(Object o) 返回非的哈希码 null参数,0为 null参数。
static boolean isNull(Object obj) 返回 true如果提供的引用是 null否则返回 false 。
static boolean nonNull(Object obj) 退货 true如果提供的参考是非 null否则返回 false 。
static T requireNonNull(T obj) 检查指定的对象引用不是 null 。
static T requireNonNull(T obj, String message) 检查指定的对象引用不是null并抛出自定义的NullPointerException(如果是)。
static T requireNonNull(T obj, Supplier messageSupplier) 检查指定的对象引用不是null并抛出一个自定义的NullPointerException(如果是)。
static String toString(Object o) 返回非 null参数调用 toString和 "null"参数的 "null"的 null 。
static String toString(Object o, String nullDefault) 如果第一个参数不是 null ,则返回第一个参数调用 toString的结果, toString返回第二个参数。
- Methods inherited from class java.lang.Object clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
- 方法摘要
-
- 方法详细信息
-
equals
public static boolean equals(Object a, Object b)返回true如果参数相等,彼此false其他。 因此,如果两个参数都是null , true返回null ,如果只有一个参数是null ,则返回false 。 否则,使用第一个参数的equals方法确定相等性。
参数
a - 一个对象
b - 与 a进行比较的一个对象
结果
true如果参数彼此相等, false false
另请参见:
Object.equals(Object)
-
deepEquals
public static boolean deepEquals(Object a, Object b)返回true如果参数是深层相等,彼此false其他。 两个null值相当。 如果两个参数都是数组,则使用Arrays.deepEquals中的算法来确定相等。 否则,通过使用第一个参数的equals方法确定相等性。
参数
a - 一个对象
b - 与 a进行比较的对象,用于深度相等
结果
true如果参数彼此深度相等, false false
另请参见:
Arrays.deepEquals(Object[], Object[]) , equals(Object, Object)
-
hashCode
public static int hashCode(Object o)
返回非的哈希码 null参数,0为 null参数。
参数
o - 一个对象
结果
非的哈希码 null参数,0为 null参数
另请参见:
Object.hashCode()
-
hash
public static int hash(Object... values)
为输入值序列生成哈希码。 生成哈希码,就好像将所有输入值都放入数组一样,并且该数组通过调用Arrays.hashCode(Object[])进行哈希处理。此方法是用于实现有用Object.hashCode()在含有多个字段的对象。 例如,如果有三个字段,对象x , y和z ,一个可以这样写:
警告:当提供单个对象引用时,返回的值不等于该对象引用的哈希码。 该值可以通过调用hashCode(Object)来计算。@Override public int hashCode() { return Objects.hash(x, y, z); }参数
values - 要散列的值
结果
输入值序列的哈希值
另请参见:
Arrays.hashCode(Object[]) , List.hashCode()
-
toString
public static String toString(Object o)
返回一个非 null参数调用 toString和一个 null参数的 "null"的 null 。
参数
o - 一个对象
结果
致电 toString为非 null参数和 "null"为 null参数的结果
另请参见:
Object.toString() , String.valueOf(Object)
-
toString
public static String toString(Object o, String nullDefault)如果第一个参数不是 null ,则返回第一个参数调用 toString的结果, toString返回第二个参数。
参数
o - 一个对象
nullDefault - 如果第一个参数是 null ,返回的字符串
结果
调用 toString对第一个参数的结果,如果不是 null ,否则第二个参数。
另请参见:
toString(Object)
-
compare
public static
返回0,如果参数都是相同的, c.compare(a, b)其他。 因此,如果两个参数都为null则返回0。int compare(T a, T b, Comparator super T> c) 请注意,如果其中一个参数为null ,则NullPointerException可能会或可能不会抛出,具体取决于Comparator选择具有null值的订购策略(如果有)。
参数类型
T - 正在比较的对象的类型
参数
a - 一个对象
b - 要与 a进行比较的对象
c - Comparator比较前两个参数
结果
如果参数相同, c.compare(a, b) 0,否则为c.compare(a, b)。
另请参见:
Comparable , Comparator
-
requireNonNull
public static
检查指定的对象引用不是null 。 该方法主要用于在方法和构造函数中进行参数验证,如下所示:T requireNonNull(T obj) public Foo(Bar bar) { this.bar = Objects.requireNonNull(bar); }参数类型
T - 参考的类型
参数
obj - 检查无效的对象引用
结果
obj如果不是 null
异常
NullPointerException - 如果 obj是 null
-
requireNonNull
public static
检查指定的对象引用不是null并抛出一个自定义的NullPointerException(如果是)。 该方法主要用于在具有多个参数的方法和构造函数中进行参数验证,如下所示:T requireNonNull(T obj, String message) public Foo(Bar bar, Baz baz) { this.bar = Objects.requireNonNull(bar, "bar must not be null"); this.baz = Objects.requireNonNull(baz, "baz must not be null"); }参数类型
T - 参考的类型
参数
obj - 检查无效的对象引用
message - 在抛出 NullPointerException的情况下使用的详细消息
结果
obj如果不是 null
异常
NullPointerException - 如果 obj是 null
-
isNull
public static boolean isNull(Object obj)
返回 true如果提供的引用是 null否则返回 false 。
API Note:
这种方法存在着用作Predicate , filter(Objects::isNull)
参数
obj - 对null进行检查的 null
结果
true如果提供的参考是 null否则 false
从以下版本开始:
1.8
另请参见:
Predicate
-
nonNull
public static boolean nonNull(Object obj)
返回 true如果提供的参考是非 null否则返回 false 。
API Note:
这种方法存在着用作Predicate , filter(Objects::nonNull)
参数
obj - 对null进行检查的 null
结果
true如果提供的参考是非 null否则 false
从以下版本开始:
1.8
另请参见:
Predicate
-
requireNonNull
public static
检查指定的对象引用不是null并抛出自定义的NullPointerException(如果是)。T requireNonNull(T obj, Supplier messageSupplier) 与方法requireNonNull(Object, String)不同,该方法允许创建要延迟的消息,直到进行空检查为止。 虽然这可能会在非空情况下赋予性能优势,但在决定调用此方法时,应注意创建消息提供者的成本低于直接创建字符串消息的成本。
参数类型
T - 参考的类型
参数
obj - 检查无效的对象引用
messageSupplier - 在发送 NullPointerException的情况下使用的详细消息的供应商
结果
obj如果不是 null
异常
NullPointerException - 如果 obj是 null
从以下版
-
- 方法详细信息



