位置:org.springframework.util
�实现接口:无
继承类:无(抽象类)
作用:提供框架内部使用的集合相关工具类
一、效果
// 演示contains方法(迭代器中是否包含元素)
@Test
public void test1(){
List<String> list = new ArrayList<String>();
list.add("test1");
list.add("test2");
list.add("test3");
String elm1 = "test1";
String elm2 = "null";
String elm3 = null;
boolean contains1 = CollectionUtils.contains(list.listIterator(), elm1);
boolean contains2 = CollectionUtils.contains(list.listIterator(), elm2);
boolean contains3 = CollectionUtils.contains(list.listIterator(), elm3);
System.out.println(contains1); // true
System.out.println(contains2); // false
System.out.println(contains3); // false
}
二、API
// 常用的API:
// 检查提供的迭代器中是否包含提供的元素,包含则返回true,否则返回false。
public static boolean contains(@Nullable Iterator<?> iterator, Object element) {
if (iterator != null) {
while (iterator.hasNext()) {
Object candidate = iterator.next();
if (ObjectUtils.nullSafeEquals(candidate, element)) {
return true;
}
}
}
return false;
}
// 判断提供的Collection是否为空或者为null,是的话返回true,否则返回false。
public static boolean isEmpty(@Nullable Collection<?> collection) {
return (collection == null || collection.isEmpty());
}
/*
将提供的数据源转换为List集合。
注意:通常,首选标准Arrays.asList方法。 此arrayToList方法仅用于在运行时处理传入
的Object值,该值可能是Object []或原始数组。
*/
public static List arrayToList(@Nullable Object source) {
return Arrays.asList(ObjectUtils.toObjectArray(source));
}
三、总结
CollectionUtils提供了数组、枚举、迭代器、Map、List等多种类别的转换与元素检查方法。该工具类的方法逻辑简单且严谨,在编写个人程序时也可以使用。
四、补充
无