核心类库
Objects类:
此类包含 static 实用程序方法,用于操作对象或在操作前检查某些条件;
方法总结:
一、equals:
public static boolean equals(Object a, Object b)
a -- 一个对象
b -- 要与a 相比获得相等性的对象
system.out.println(a.equals(b));
//如果参数彼此相等,为true;否则为false;
特殊情况:如果这时的a 是空值,则程序会报错“空指针异常(Nullpointexception)”,这是因为用空值a 来调用equals 方法,会导致程序报错。
所以,为了解决这种Bug,我们可以用这种格式来写:
system.out.println(Objects.equals(s1,s2));
如果两个参数相等,则返回true;否则,返回false;不会导致程序中断报错。
deepEquals:
如果参数是深层相等,返回true;否则返回false;两个null值非常相等;
如果两个参数都是数组,使用Arrays.deepEquals中的算法来确定相等性。
二、toString:
public static String toString(Object o)
//调用的结果 toString 对于非 null 参数,由"null"为null 的转换;
public static String toString(Object o , String nullDefault)
//如果第一个参数不是null, 则返回在第一个参数上调用toString 的结果,否则返回第二个参数。
三、isNull:
public static boolean isNull (Object obj)
//如果提供的查考(obj)是null,则返回true ;否则返回false;
四、nonNull:
public static boolean nonNull(Object obj)
//如果提供的参考(obj)不是null,返回true;否则返回false;
isNull 和 nonNull 用于判断提供的参考,是否为空;
如:
public static <person> void main (String [] args){
Person p = null;
system.out.println(Objects.isNull(p));
}
五、requireNonNull:
public static <T> T requireNonNull (T obj)
//检查指定的对象引用是否为null,此方法主要用于方法个构造函数中进行参数验证;
如:
public Foo(Bar bar) {
this.bar = Objects.requireNonNull(bar);
}
因篇幅问题不能全部显示,请点此查看更多更全内容