两个List集合取相同重复数据的方法

以下是两个list取重复的代码:

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取重复

* @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也是可以用这个方法的

总结

以上是 两个List集合取相同重复数据的方法 的全部内容, 来源链接: utcz.com/z/348105.html

回到顶部