commons-collections4工具常用方法

commons-collections4是Apache Commons项目中的一个模块,提供了一系列处理集合和映射的工具类、接口和算法。它是在commons-collections的基础上进行了改进和增强,为Java开发者提供了更多集合操作的功能和便利性。

引入依赖

复制代码
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-collections4</artifactId>
            <version>4.4</version>
        </dependency>

判断集合是否为null或长度为0

java 复制代码
        List<String> a = new ArrayList<>();
        System.out.println(CollectionUtils.isEmpty(a)); // true
        a=null;
        System.out.println(CollectionUtils.isEmpty(a)); // true

取集合的交集

java 复制代码
        List<String> a = new ArrayList<>();
        a.add("a");
        a.add("b");
        a.add("c");
        List<String> b = new ArrayList<>();
        b.add("c");
        b.add("1");
        b.add("2");
        System.out.println(CollectionUtils.intersection(a, b)); // [c]

取集合并集

java 复制代码
        List<String> a = new ArrayList<>();
        a.add("a");
        a.add("b");
        a.add("c");
        List<String> b = new ArrayList<>();
        b.add("c");
        b.add("1");
        b.add("2");
        System.out.println(CollectionUtils.union(a,b)); // [a, 1, b, 2, c]

取集合差集

java 复制代码
       List<String> a = new ArrayList<>();
        a.add("a");
        a.add("b");
        a.add("c");
        List<String> b = new ArrayList<>();
        b.add("c");
        b.add("1");
        b.add("2");
        // a-b的值
        System.out.println(CollectionUtils.subtract(a,b)); // [a, b]
相关推荐
茶本无香17 分钟前
RequestContextFilter介绍
java·spring·filter·requestcontext
iナナ31 分钟前
初识JVM
java·jvm
m0_5704664140 分钟前
代码随想录算法训练营第二十八天 | 买卖股票的最佳实际、跳跃游戏、K次取反后最大化的数组和
java·开发语言·算法
ST.J2 小时前
swing笔记
java·笔记
菩提树下的凡夫2 小时前
瑞芯微RV1126目标识别算法Yolov8的部署应用
java·算法·yolo
爱隐身的官人2 小时前
新后端漏洞(上)- Java RMI Registry反序列化漏洞
java·反序列化漏洞
叫我阿柒啊2 小时前
从Java全栈到前端框架:一次真实的面试对话与技术解析
java·javascript·typescript·vue·springboot·react·前端开发
晚安里2 小时前
Spring 框架(IoC、AOP、Spring Boot) 的必会知识点汇总
java·spring boot·spring
爱隐身的官人2 小时前
新后端漏洞(上)- Aapache Tomcat AJP 文件包含漏洞(CVE-2020-1938)
java·tomcat·ajp
@CLoudbays_Martin112 小时前
为什么动态视频业务内容不可以被CDN静态缓存?
java·运维·服务器·javascript·网络·python·php