求数组的交并差集
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Set;
public class jiaobincha
{
public static void main(String[] args)
{
int [] a = {1,4,2,8,6,5};
int [] b = {2,6,8};
int temp[] = new int [a.length<b.length? a.length:b.length];
int k=0;
for(int i=0; i<a.length;i++)
{
for(int j=0; j<b.length;j++)
{
if(a[i]==b[j])
{
temp[k++]=a[i];
}
}
}
for(k=0;k<temp.length;k++)
{
System.out.print(temp[k]+" ");
}
HashSet<Integer> h=new HashSet<Integer>();
for(int i=0;i<a.length;i++)
{
for(int j=0;j<b.length;j++)
{
if(a[i]!=b[j])
h.add(a[i]);
}
}
System.out.println();
for(int i:h)
{
System.out.print(i+" ");
}
System.out.println();
Set<Object> s1 = new HashSet<Object>();
for(int i=0;i<a.length;i++)
{
s1.add(a[i]);
}
Set<Object> s2 = new HashSet<Object>();
for(int i=0;i<b.length;i++)
{
s2.add(b[i]);
}
Set<Object> result = difference(s1,s2);
if (!result.isEmpty())
{
for (Object o : result)
{
System.out.print(o.toString()+" ");
}
}
}
public static Set<Object> difference(Set<Object> s1,Set<Object> s2)
{
Set<Object> result = new HashSet<Object>();
result.clear();
result.addAll(s1);
result.removeAll(s2);
return result;
}
}