java找到两个list的交集并集差集

Python013

java找到两个list的交集并集差集,第1张

//交集

set1.retainAll(set2)

//差集

set1.removeAll(set2)

//并集1

set1.addAll(set2)

public static void test3() {

Set<String> cc = new HashSet<String>()

cc.add("2")

cc.add("a")

cc.add("b")

cc.add("x")

Set<String> dd = new HashSet<String>()

dd.add("b")

dd.add("1")

dd.add("2")

dd.add("3")

dd.add("a")

Set<String> ff = new HashSet<String>()

ff.addAll(cc)

ff.addAll(dd)

System.out.println(ff.toString())

}

这是并集

虽然想尽量维持你程序的原型,但是还是改的差不多了。学java注重的是面向对象的思想,建议你不要把太多精力放在这些算法上面,不能再像学习C语言那样学习java。

public class Group{

public void jiaoji(int[] a,int[] b){

for(int i=0i<a.lengthi++){

for(int j=0j<b.lengthj++){

if(a[i]==b[j]){

System.out.print(a[i]+",")

}

}

}

}

public void bingji(int[] a,int[] b){

for(int i=0i<a.lengthi++){

System.out.print(a[i]+",")

}

for(int i=0i<b.lengthi++){

boolean flag=true

for(int j=0j<a.lengthj++){

if(b[i]==a[j]){

flag=false

}

}

if(flag){

System.out.print(b[i]+",")

}

}

}

public static void main(String[] args){

int a[]={1,2,3,4,5}

int b[]={4,5,6,7,8}

Group group=new Group()

System.out.print("交集为:")

group.jiaoji(a,b)

System.out.print("\n并集为:")

group.bingji(a,b)

}

}