Think in Java(八):持有对象

1.各种map的区别
HashMap: 没有按照任何明显的顺序来保存其元素(同HashSet)
TreeMap:按照比较结果的升序保存key(同TreeSet)
LinkedHashMap:按照插入顺序保存key(同LinkedHashSet)

2.ListIterator是一个更为强大的Iterator的子类型,Iterator只能向前移动,但是ListIterator可以双向移动
public class ListIteration {
	public static void main(String[] args) {
		List<Pet> pets = Pets.arrayList(8);
		ListIterator<Pet> it = pets.listIterator();
		
		// Forwards:
		while (it.hasNext()){
			System.out.print(it.next() + ", " + it.nextIndex() + ", " + it.previousIndex() + "; ");
		}
		
		// Backwards:
		while (it.hasPrevious()){
			System.out.print(it.previous().id() + " ");
		}
	}
}

3. TreeSet中的元素是排序的,默认按照字典升序,当然我们可以自己传入一个比较器来自定义排序。

public class UniqueWordsAlphabetic {
	public static void main(String[] args) {
		Set<String> words = new TreeSet<String>(String.CASE_INSENSITIVE_ORDER);
		words.add("a");
		words.add("c");
		words.add("B");
		System.out.println(words);
	}
}



你可能感兴趣的:(Think in Java(八):持有对象)