Springboot內(nèi)置的工具類之ObjectUtils
在實際業(yè)務開發(fā)中,有時候經(jīng)常需要判斷對象是否為空、數(shù)組是否為空、兩個對象是否相等,數(shù)組中是否包含某個元素,往數(shù)組中追加元素等這些操作,每次都手寫太麻煩,然后很多人的選擇是封裝成util工具類,實際上類似這些東西,如果項目使用了spring的框架,根本不需要封裝,org.springframework.util.ObjectUtils類中已經(jīng)封裝好了各種的靜態(tài)方法供你調(diào)用。那就一起來學習一下吧。
ObjectUtils
全限定類名:org.springframework.util.ObjectUtils
- boolean isEmpty(Object obj)
作用:
obj可以是普通對象,也可以是普通數(shù)組,如果obj為空(null或is empty),則返回true;否則返回false;
- boolean isEmpty(Object[] array)
作用:
array參數(shù)是數(shù)組,如果數(shù)組array為空(null或is empty),則返回true;否則返回false;
- boolean isArray(Object obj)
作用:參數(shù)是對象,如果參數(shù)對象obj是數(shù)組,則返回true;否則返回false;
- boolean containsElement(Object[] array, Object element)
作用:
參數(shù)array為目標數(shù)組,參數(shù)element為普通待判斷的元素,如果目標數(shù)組array中包含元素element,則返回true; 否則返回false;
- boolean nullSafeEquals(Object o1, Object o2)
作用:
參數(shù)為o1、o2為普通對象,可以是數(shù)字、字符、對象、數(shù)組,如果o1與o2相等,則返回true;否則返回false;
- String nullSafeToString(Object obj)
作用:
參數(shù)obj可以是普通對象、布爾類型、byte類型、字符類型、浮點型、雙精度浮點型、整型、長整型、短整型其中一種
- A[] addObjectToArray(A[] array, O obj)
作用:參數(shù)array為目標數(shù)組,參數(shù)obj為待添加元素,向參數(shù)數(shù)組array的末尾追加新元素obj,并返回一個新數(shù)組;
@Test
public void objectUtilsTest(){
Employee employee = new Employee();
employee.setRealName("zhangsan");
boolean empty = ObjectUtils.isEmpty(employee);
System.out.println("isEmpty:"+empty);
Employee[] employees={employee};
boolean empty1 = ObjectUtils.isEmpty(employees);
System.out.println("isEmpty(arrar):"+empty1);
boolean array = ObjectUtils.isArray(employees);
System.out.println("isArray:"+array);
Employee tar = new Employee();
tar.setRealName("zhangsan");
boolean b = ObjectUtils.containsElement(employees, tar);
System.out.println("containsElement:"+b);
boolean b1 = ObjectUtils.nullSafeEquals(employee, tar);
System.out.println("nullSafeEquals:"+b1);
Employee lisi = new Employee();
lisi.setRealName("lisi");
Employee[] employees1 = ObjectUtils.addObjectToArray(employees, lisi);
System.out.println("addObjectToArray:"+employees1);
String string = ObjectUtils.nullSafeToString(employees1);
System.out.println("nullSafeToString:"+string);
}
總結(jié)
org.springframework.util.ObjectUtils類中有很多已經(jīng)封裝好的靜態(tài)方法,平時用到的里面基本都有,下面是整體的UML類圖,這里只是分享其中用頻率非常高的7種,有興趣的小伙伴可以繼續(xù)深入探索下去。