About Collection

This piece of writing is reprinted from  the following URL:

http://download.oracle.com/javase/tutorial/collections/implementations/index.html

just for self-learning.

 

Three general-purpose Set implementations — HashSet, TreeSet, and LinkedHashSet.

Two general-purpose List implementations — ArrayList and LinkedList.

Three general-purpose Map implementations are HashMap, TreeMap and LinkedHashMap.

 LinkedList implements the Queue interface, providing first in, first out (FIFO) queue operations for add, poll, and so on.

Difference among them:

HashSet is much faster than TreeSet but offers no ordering guarantees.

If you need to use the operations in the SortedSet interface, or if value-ordered iteration is required, use TreeSet; otherwise, use HashSet.

If you frequently add elements to the beginning of the List or iterate over the List to delete elements from its interior, you should consider using LinkedList rather than ArrayList.

If you need SortedMap operations or key-ordered Collection-view iteration, use TreeMap; if you want maximum speed and don't care about iteration order, use HashMap; if you want near-HashMap performance and insertion-order iteration, use LinkedHashMap.

  • For the Set interface, HashSet is the most commonly used implementation.
  • For the List interface, ArrayList is the most commonly used implementation.
  • For the Map interface, HashMap is the most commonly used implementation.
  • For the Queue interface, LinkedList is the most commonly used implementation.

 

你可能感兴趣的:(About Collection)