Java基础学习: hutool之CollUtil集合操作工具类

文章目录

一、介绍

Hutool是一个Java工具类库,它简化了Java的开发,提供了很多实用的API。在Hutool中,对于集合(Collection)的操作提供了很多便捷的方法。

二、Hutool集合操作示例

1、判断是否为空:

java 复制代码
List<String> list = null;
boolean isEmpty = CollUtil.isEmpty(list); // true

2、判断是否非空

java 复制代码
List<String> list = new ArrayList<>();
boolean isNotEmpty = CollUtil.isNotEmpty(list); // false

3、集合是否包含某个元素

java 复制代码
List<String> list = CollUtil.newArrayList("a", "b", "c");
boolean contains = CollUtil.contains(list, "a"); // true

4、集合是否包含某些元素

java 复制代码
List<String> list = CollUtil.newArrayList("a", "b", "c");
boolean containsAll = CollUtil.containsAll(list, CollUtil.newArrayList("a", "b")); // true

5、集合是否不包含某些元素

java 复制代码
List<String> list = CollUtil.newArrayList("a", "b", "c");
boolean notContains = CollUtil.notContains(list, "d"); // true

6、两个集合的交集操作

java 复制代码
List<String> list1 = CollUtil.newArrayList("a", "b", "c");
List<String> list2 = CollUtil.newArrayList("b", "c", "d");
List<String> intersection = CollUtil.intersection(list1, list2); // ["b", "c"]

7、两个集合的并集操作

java 复制代码
List<String> list1 = CollUtil.newArrayList("a", "b", "c");
List<String> list2 = CollUtil.newArrayList("b", "c", "d");
List<String> union = CollUtil.union(list1, list2); // ["a", "b", "c", "d"]

8、两个集合的差集操作

java 复制代码
List<String> list1 = CollUtil.newArrayList("a", "b", "c");
List<String> list2 = CollUtil.newArrayList("b", "c", "d");
List<String> subtract = CollUtil.subtract(list1, list2); // ["a"]

9、集合元素是否相等

java 复制代码
List<String> list1 = CollUtil.newArrayList("a", "b", "c");
List<String> list2 = CollUtil.newArrayList("a", "b", "c");
boolean equals = CollUtil.equals(list1, list2); // true

10、集合转换为字符串,列表转为逗号分隔的字符串

java 复制代码
List<String> list = CollUtil.newArrayList("a", "b", "c");
String join = CollUtil.join(list, ", "); // "a, b, c"
相关推荐
皮皮林55111 小时前
拒绝写重复代码,试试这套开源的 SpringBoot 组件,效率翻倍~
java·spring boot
顺风尿一寸14 小时前
从 Java NIO poll 到 Linux 内核 poll:一次系统调用的完整旅程
java
程途知微14 小时前
JVM运行时数据区各区域作用与溢出原理
java
华仔啊17 小时前
为啥不用 MP 的 saveOrUpdateBatch?MySQL 一条 SQL 批量增改才是最优解
java·后端
xiaoye201819 小时前
Lettuce连接模型、命令执行、Pipeline 浅析
java
beata1 天前
Java基础-18:Java开发中的常用设计模式:深入解析与实战应用
java·后端
Seven971 天前
剑指offer-81、⼆叉搜索树的最近公共祖先
java
雨中飘荡的记忆2 天前
保证金系统入门到实战
java·后端
Nyarlathotep01132 天前
Java内存模型
java