1. 程式人生 > >【Java集合框架】Map與Set的有序與無序

【Java集合框架】Map與Set的有序與無序

Set本身不保證順序
/*
 * HashSet是無序的; LinkedHashSet是按插入順序的; TreeSet是按升序的;
 * 
 * HashMap是無序的;LinkedHashMap是按插入順序的;TreeMap是按升序的;
 * */
public class CollectionsDemo {

	public static void main(String[] args) {
		
		Set<Integer> set = new HashSet<Integer>();//TreeSet();//LinkedHashSet
		set.add(100);
		set.add(1);
		set.add(10);
		set.add(3);
		set.add(78);
		System.out.println(set);
		
		System.out.println("--------------------------");
		Map<Integer, String> map = new HashMap();//TreeMap();//LinkedHashMap
		map.put(100, "e");
		map.put(1, "c");
		map.put(10, "a");
		map.put(3, "b");
		map.put(78, "d");
		System.out.println(map);
	}

}

輸出:

HashMap/HashSet:1, 3, 100, 10, 78

TreeMap/TreeSet:1, 3, 10, 78, 100

LinkedHashMap/LinkedHashSet:100, 1, 10, 3, 78