网站首页 > 精选教程 正文
本文主要讲述:集合工具类Apache之org.apache.commons.collections.ListUtils
对于集合的操作,Apache提供了很多工具类,如:CollectionUtils、ListUtils、SetUtils、MapUtils等,本文主要列举ListUtils的一些用法。
一、判断两集合是否相等
List<String> list1 = Arrays.asList("1", "2");
List<String> list2 = Arrays.asList("1", "3");
boolean flag = ListUtils.isEqualList(list1, list2);
输出:false
二、集合合并(去重)
List<String> list1 = Arrays.asList("1", "2");
List<String> list2 = Arrays.asList("1", "3");
List<String> list3 = ListUtils.sum(list1, list2);
输出:[2, 1, 3]
三、取并集
List<String> list1 = Arrays.asList("1", "2");
List<String> list2 = Arrays.asList("1", "3");
List<String> list3 = ListUtils.union(list1, list2);
输出:[1, 2, 1, 3]
四、取交集
List<String> list1 = Arrays.asList("1", "2");
List<String> list2 = Arrays.asList("1", "3");
List<String> list3 = ListUtils.intersection(list1, list2);
输出:[1]
List<String> list4 = ListUtils.retainAll(list1, list2);
输出:[1]
五、取差集(集合1去除集合2中的所有元素)
List<String> list1 = Arrays.asList("1", "2");
List<String> list2 = Arrays.asList("1", "3");
List<String> list3 = ListUtils.subtract(list1, list2);
输出:[2]
List<String> list4 = ListUtils.removeAll(list1, list2);
输出:[2]
六、生成固定类型列表
List<Object> list1 = Arrays.asList("1", "2");
List<Object> list3 = ListUtils.typedList(list1, String.class);
输出:[1, 2]
list3.add(1);
输出:java.lang.IllegalArgumentException:
Cannot add Object '1' - Predicate rejected it
七、生成固定大小列表
List<String> list1 = Arrays.asList("1", "2");
List<String> list2 = ListUtils.fixedSizeList(list1);
输出:[1, 2]
list1.add("3");
输出:java.lang.UnsupportedOperationException
八、给集合加锁
List<String> list1 = Arrays.asList("1", "2");
List<String> list2 = ListUtils.synchronizedList(list1);
输出:[1, 2]
九、生成不可修改集合(不能增减元素,只能查询)
List<String> list1 = Arrays.asList("1", "2");
List<String> list2 = ListUtils.unmodifiableList(list1);
输出:[1, 2]
list1.add("3");
输出:java.lang.UnsupportedOperationException
点赞永无BUG![耶]
- 上一篇: Java集合初始化多种写法
- 下一篇: Redis 常用数据类型之 zset(有序集合)
猜你喜欢
- 2024-12-27 Java集合、多线程、反射和Spring框架总结,源码解析
- 2024-12-27 面试官必问:Java中的JUC工具类详细揭秘
- 2024-12-27 C# 基础知识系列- 3 集合数组
- 2024-12-27 100个Java工具类之59:集合HashMap
- 2024-12-27 常见面试题之java系列
- 2024-12-27 初步认识Java集合框架
- 2024-12-27 java中常用第三方类库
- 2024-12-27 Java Collections 工具类集合框架中常用算法解析
- 2024-12-27 GUAVA集合类使用总结
- 2024-12-27 Java集合-Properties
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- nginx反向代理 (57)
- nginx日志 (56)
- nginx限制ip访问 (62)
- mac安装nginx (55)
- java和mysql (59)
- java中final (62)
- win10安装java (72)
- java启动参数 (64)
- java链表反转 (64)
- 字符串反转java (72)
- java逻辑运算符 (59)
- java 请求url (65)
- java信号量 (57)
- java定义枚举 (59)
- java字符串压缩 (56)
- java中的反射 (59)
- java 三维数组 (55)
- java插入排序 (68)
- java线程的状态 (62)
- java异步调用 (55)
- java中的异常处理 (62)
- java锁机制 (54)
- java静态内部类 (55)
- java怎么添加图片 (60)
- java 权限框架 (55)
本文暂时没有评论,来添加一个吧(●'◡'●)