我是靠谱客的博主 彪壮眼睛,最近开发中收集的这篇文章主要介绍集合工具类CollectionUtils、ListUtils、SetUtils、MapUtils的使用,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

今天来总结下这些工具类。

主要用它的isEmpty(final Collection<?> coll)静态方法来判断一个给定的集合是否为null或者是否长度为0。最近才发现此工具类还可以取集合的交集、并集、甚至差集,集合1:[1,2,3,4],集合2:[3,4,5,6]

      上面两个集合取交集的结果是[3,4],CollectionUtils工具类提供了Collection<O> intersection(final Iterable<? extends O> a, final Iterable<? extends O> b)静态方法来取交集,参数传两个集合,可以是list,也可以是set,甚至一个list,一个set;

      上面两个集合取并集的结果是[1,2,3,4,5,6],CollectionUtils工具类提供了Collection<O> union(final Iterable<? extends O> a, final Iterable<? extends O> b) ,参数同取交集类似;

      CollectionUtils工具类也提供了取差集的静态方法Collection<O> disjunction(final Iterable<? extends O> a, final Iterable<? extends O> b),如果操作上面两个集合的话(第一个集合减去第二个集合),结果是[1,2,5,6],这个效果其实是两个集合的并集减去这两个集合的交集。但是实际开发中,我们可能更想要得到[1,2],CollectionUtils工具类并没有提供能直接达到这种效果的方法,不过我们可以通过两个方法的合作来达到这种效果,即用第一个集合减去这两个集合的交集:

public  static  void  main(String[] args) { 
     List<Integer> list1 =  new  ArrayList<Integer>(); 
     list1.add(1); 
     list1.add(2); 
     list1.add(3); 
     list1.add(4); 
   
     List<Integer> list2 =  new  ArrayList<Integer>(); 
     list2.add(3); 
     list2.add(4); 
     list2.add(5); 
     list2.add(6); 
   
     // 取交集[3, 4] 
     Collection<Integer> interColl = CollectionUtils.intersection(list1, list2); 
     System. out .println(interColl); // 打印出[3, 4] 
   
     // 取并集[1, 2, 3, 4, 5, 6] 
     Collection<Integer> unionColl = CollectionUtils.union(list1, list2); 
     System. out .println(unionColl); // 打印出[1, 2, 3, 4, 5, 6] 
   
     // 取差集[1,2] 
     Collection<Integer> disColl = CollectionUtils.disjunction(list1, interColl); 
     System. out .println(disColl); // 打印出[1, 2] 
    

除了上面介绍的方法外,CollectionUtils工具类还有好多其他常用的静态方法。除了CollectionUtils工具类外,还有ListUtils、SetUtils工具类,里面也有好多使用的静态方法

最后

以上就是彪壮眼睛为你收集整理的集合工具类CollectionUtils、ListUtils、SetUtils、MapUtils的使用的全部内容,希望文章能够帮你解决集合工具类CollectionUtils、ListUtils、SetUtils、MapUtils的使用所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(58)

评论列表共有 0 条评论

立即
投稿
返回
顶部