public static Set<Integer> getIds(Integer[] a, Integer[] b){
Set<Integer> same = new HashSet<Integer>(); //用来存放两个数组中相同的元素
Set<Integer> temp = new HashSet<Integer>(); //用来存放数组a中的元素
for (int i = 0; i < a.length; i++) {
temp.add(a[i]); //把数组a中的元素放到Set中,可以去除重复的元素
}
for (int j = 0; j < b.length; j++) {
//把数组b中的元素添加到temp中
//如果temp中已存在相同的元素,则temp.add(b[j])返回false
if(!temp.add(b[j]))
same.add(b[j]);
}
return same;
}
public static void main(String[] arg){
Integer[] array1 = {1,2,3,4,1,2,4,6,7,8,10,22,33};
Integer[] array2 = {1,2,3,4,1,2,4,6,7,8,10,22,33,55,66,77,88,99};
Set<Integer> sameElementSet = getIds(array1,array2);
for(Integer i : sameElementSet) {
System.out.println(i);
}
}