package com.keao.edu.util.collection;

import java.util.ArrayList;
import java.util.List;

public class ListUtil {

	/**
	 * 两个集合是否相等，与元素顺序无关
	 * @param list1
	 * @param list2
	 * @return
	 */
	public static boolean isEquals(List<?> list1, List<?> list2) {
		if (list1 == list2) {
			return true;
		}
		if (list1 == null && list2 == null) {
			return true;
		}
		if (list1 == null || list2 == null) {
			return false;
		}
		if (list1.size() != list2.size()) {
			return false;
		}
		if (list1.containsAll(list2) && list2.containsAll(list1)) {
			return true;
		}
		return false;
	}

	public static void main(String[] args) {
		List<Integer> list1 = new ArrayList<Integer>();
		list1.add(2);
		list1.add(1);
		list1.add(1);

		List<Integer> list2 = new ArrayList<Integer>();
		list2.add(1);
		list2.add(2);
		list2.add(1);

		System.out.println(isEquals(list1, list2) ? "true" : "false");
	}
}
