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"
相关推荐
_Kayo_18 分钟前
node.js 学习笔记3 HTTP
笔记·学习
桦说编程3 小时前
Java 中如何创建不可变类型
java·后端·函数式编程
lifallen3 小时前
Java Stream sort算子实现:SortedOps
java·开发语言
IT毕设实战小研3 小时前
基于Spring Boot 4s店车辆管理系统 租车管理系统 停车位管理系统 智慧车辆管理系统
java·开发语言·spring boot·后端·spring·毕业设计·课程设计
cpsvps_net3 小时前
美国服务器环境下Windows容器工作负载智能弹性伸缩
windows
CCCC13101633 小时前
嵌入式学习(day 28)线程
jvm·学习
没有bug.的程序员3 小时前
JVM 总览与运行原理:深入Java虚拟机的核心引擎
java·jvm·python·虚拟机
甄超锋4 小时前
Java ArrayList的介绍及用法
java·windows·spring boot·python·spring·spring cloud·tomcat
星星火柴9364 小时前
关于“双指针法“的总结
数据结构·c++·笔记·学习·算法
小狗爱吃黄桃罐头4 小时前
正点原子【第四期】Linux之驱动开发篇学习笔记-1.1 Linux驱动开发与裸机开发的区别
linux·驱动开发·学习