public static void main(String[] args) {
List<Integer> list1 = new ArrayList<Integer>();
for (int i = 0; i < 5; i++) {
list1.add(i);
}
List<Integer> list2 = new ArrayList<Integer>();
for (int i = 2; i < 8; i++) {
list2.add(i);
}
System.out.println("List1的数据:" + list1);
System.out.println("List2的数据:" + list2);
System.out.println("交集为" + getRepetition(list1, list2));
}
/**
* 两个list取重复
* @author shijing
* 2015年9月11日上午9:45:25
* @param list1
* @param list2
* @return
*/
public static List<Integer> getRepetition(List<Integer> list1,
List<Integer> list2) {
List<Integer> result = new ArrayList<Integer>();
for (Integer integer : list2) {//遍历list1
if (list1.contains(integer)) {//如果存在这个数
result.add(integer);//放进一个list里面,这个list就是交集
}
}
return result;
}
当类型为引用类型也是可以的,因为list.contains 内部实现为equals() , 所以两个String类型的list 也是可以用这个方法的