Java使用CollectionUtils集合工具类
1、基本介绍
CollectionUtils 是 Apache Commons Collections 库提供的集合操作工具类,主要用于简化 List、Set 等集合的常见操作。与 JDK 自带的 Collections 工具类不同,它提供了更多增强功能且能更好地处理 null 值。
Maven 依赖配置:
注意:使用前需添加 Maven 依赖,且与 Spring 框架的 CollectionUtils 区分。
<!-- Apache Commons Collections 库 -->
<dependency><groupId>org.apache.commons</groupId><artifactId>commons-collections4</artifactId><version>4.4</version>
</dependency>
Java集合工具类的使用:
《Java使用Collections集合工具类》
《Java使用CollectionUtils集合工具类》
2、核心功能方法
方法 | 说明 |
---|---|
一、集合判断方法 | |
isEmpty(Collection coll) | 判断集合为 null 或空集合。 |
isNotEmpty(Collection coll) | 判断集合非 null 且非空。 |
size(Collection coll) | 安全获取集合大小,如果 null,则返回 0。 |
二、集合运算方法 | |
union(Collection a, Collection b) | 返回两个集合的并集。 |
intersection(Collection a, Collection b) | 返回两个集合的交集。 |
subtract(Collection a, Collection b) | 返回 a 集合减去 b 集合的元素。 |
disjunction(Collection a, Collection b) | 返回两个集合的对称差集。 |
三、集合操作工具 | |
filter(Collection collection, Predicate predicate) | 条件过滤集合元素。 |
transform(Collection collection, Transformer transformer) | 对集合元素进行转换。 |
collect(Iterator input, Transformer transformer) | 迭代器元素转换。 |
addIgnoreNull(Collection<T> coll, T item) | 仅添加非 null 元素。 |
四、集合比较方法 | |
isEqualCollection(Collection a, Collection b) | 判断两集合元素是否完全相同。 |
cardinality(Object obj, Collection coll) | 统计元素出现次数。 |
exists(Collection coll, Predicate pred) | 判断是否存在满足条件的元素。 |
五、特殊集合创建 | |
synchronizedCollection(Collection coll) | 创建线程安全集合。 |
unmodifiableCollection(Collection coll) | 创建不可变集合。 |
predicatedCollection(Collection coll, Predicate pred) | 创建带验证的集合。 |
六、其他实用方法 | |
reverseArray(Object[] array) | 反转数组顺序。 |
collate(Iterable a, Iterable b) | 合并两个已排序集合。 |
get(Object object, int index) | 安全获取集合元素。 |
forAllDo(Collection coll, Closure closure) | 对所有元素执行操作。 |
这些方法均支持 null 安全处理,能显著简化集合操作代码。