我是靠谱客的博主 烂漫斑马,最近开发中收集的这篇文章主要介绍D5 : CollectionUtils:并集,交集,差集(扣除),差集(交集之和),镜像集合,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
commons-collections4-4.0-alpha1.jar包下的org.apache.commons.collections4.CollectionUtils类总结
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashSet;
import java.util.Set;
import org.apache.commons.collections4.CollectionUtils;
public class CollectionUtilsDemo {
public static void main(String[] args) {
Set<Integer> set1 = new HashSet<Integer>();
set1.add(1);
set1.add(2);
set1.add(3);
Set<Integer> set2 = new HashSet<Integer>();
set2.add(2);
set2.add(3);
set2.add(4);
//并集
System.out.println("====并集====");
Collection<Integer> col = CollectionUtils.union(set1,set2);
for(Integer temp:col){
System.out.println(temp);
}//1,2,3,4
//交集
System.out.println("====交集====");
//col =CollectionUtils.intersection(set1, set2);
col =CollectionUtils.retainAll(set1,set2);
for(Integer temp:col){
System.out.println(temp);
}//2,3
//差集:set1扣除与set2相同的剩余值,或理解成:取set1中不存在于set2的值
System.out.println("====差集(扣除)====");
col =CollectionUtils.subtract(set1,set2);
for(Integer temp:col){
System.out.println(temp);
}//1
//差集:set1加上与set2不同的值,或理解成:取set1与set2交集之外的值
System.out.println("====差集(交集之和)====");
col =CollectionUtils.disjunction(set1,set2);
for(Integer temp:col){
System.out.println(temp);
}//1,4
System.out.println("====镜像集合====");
Collection<String> s = unmodifiableCollection();
//对c进行操作,s也同样获得了和c相同的内容
System.out.println(s);//[u,m,d]
s.add("have a error");//java.lang.UnsupportedOperationException
}
public static Collection<String> unmodifiableCollection(){
Collection<String> c = new ArrayList<String>();
//得到一个集合的镜像s,s的返回结果不可直接被改变
Collection<String> s = CollectionUtils.unmodifiableCollection(c);
c.add("u");
c.add("m");
c.add("d");
//用途:保护c的安全性,如需要提供查询可返回s
return s;
}
}
最后
以上就是烂漫斑马为你收集整理的D5 : CollectionUtils:并集,交集,差集(扣除),差集(交集之和),镜像集合的全部内容,希望文章能够帮你解决D5 : CollectionUtils:并集,交集,差集(扣除),差集(交集之和),镜像集合所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复