以String为例:
public static void main(String[] args) { List<String> list1 = new ArrayList<String>(); for (int i = 0; i < 9; i++) { list1.add(String.valueOf(i)); } List<String> list2 = new ArrayList<>(); for (int i = 3; i < 11; i++) { list2.add(String.valueOf(i)); } System.out.println("list1:" + list1); System.out.println("list2:" + list2); getTheSameSection(list1, list2); } public static List getTheSameSection(List<String> list1, List<String> list2) { List<String> resultList = new ArrayList<>(); for (String item : list2) {//遍历list2 if (list1.contains(item)) {//如果存在这个数 resultList.add(item);//放进一个resultList里面,这个resultList就是交集 } } System.out.println("resultList:" + resultList); return resultList; }
list1:[0, 1, 2, 3, 4, 5, 6, 7, 8]
list2:[3, 4, 5, 6, 7, 8, 9, 10]
resultList:[3, 4, 5, 6, 7, 8]
3,4,5,6,7,8, 就是list1和list2的重复数据