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"
相关推荐
Dola_Pan1 小时前
Linux文件IO(二)-文件操作使用详解
java·linux·服务器
wang_book1 小时前
Gitlab学习(007 gitlab项目操作)
java·运维·git·学习·spring·gitlab
weixin_455446172 小时前
Python学习的主要知识框架
开发语言·python·学习
蜗牛^^O^2 小时前
Docker和K8S
java·docker·kubernetes
从心归零3 小时前
sshj使用代理连接服务器
java·服务器·sshj
指间and流年3 小时前
Windows Server2016多用户登录破解
windows
IT毕设梦工厂4 小时前
计算机毕业设计选题推荐-在线拍卖系统-Java/Python项目实战
java·spring boot·python·django·毕业设计·源码·课程设计
Ylucius4 小时前
动态语言? 静态语言? ------区别何在?java,js,c,c++,python分给是静态or动态语言?
java·c语言·javascript·c++·python·学习
LvManBa5 小时前
Vue学习记录之六(组件实战及BEM框架了解)
vue.js·学习·rust