两个list取出重复数据

public static void main(String[] args) {

		List list1 = new ArrayList();
		for (int i = 0; i < 5; i++) {
			list1.add(i);
		}
		List list2 = new ArrayList();
		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 getRepetition(List list1,
			List list2) {
		List result = new ArrayList();
		for (Integer integer : list2) {//遍历list1
			if (list1.contains(integer)) {//如果存在这个数
				result.add(integer);//放进一个list里面,这个list就是交集
			}
		}
		return result;
	}


当类型为引用类型也是可以的,因为list.contains 内部实现为equals() , 所以两个String类型的list 也是可以用这个方法的

你可能感兴趣的:(代码工具类,个人心得)