100个Java工具类之44:集合工具类Apache之ListUtils

内容分享1个月前发布 DunLing
1 2 0

本文主要讲述:集合工具类Apache之
org.apache.commons.collections.ListUtils

对于集合的操作,Apache提供了许多工具类,如:CollectionUtils、ListUtils、SetUtils、MapUtils等,本文主要列举ListUtils的一些用法。

100个Java工具类之44:集合工具类Apache之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]

100个Java工具类之44:集合工具类Apache之ListUtils

四、取交集

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

100个Java工具类之44:集合工具类Apache之ListUtils

七、生成固定大小列表

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

100个Java工具类之44:集合工具类Apache之ListUtils

点赞永无BUG!

© 版权声明

相关文章

2 条评论

您必须登录才能参与评论!
立即登录
  • 头像
    亦客贴吧号贴吧业务 读者

    转发

    无记录
  • 头像
    流浪小狗收留处_ 投稿者

    收藏了,感谢分享

    无记录