This week's book giveaway is in the OCMJEA forum. We're giving away four copies of OCM Java EE 6 Enterprise Architect Exam Guide and have Paul Allen & Joseph Bambara on-line! See this thread for details.
I'm not sure what "Fast for Access (Iterate)" means. If you use an Iterator, then all these collections and maps are reasonably fast, including LinkedList. It's when you use methods like get(index) or get(key) that speed differences become important - LinkedList has very poor performance when you use get(index). That's the only one that is really bad. Here's how I would modify the table:
In general Good means O(1), Fair means O(log(N)) and Poor means O(N). For example, a LinkedHashMap may be twice as slow as a HashMap, but that rarely matters - it's still notably faster than a TreeMap.
Note that ArrayList and Vector are Good at inserting or deleting at the end, but Poor in general. LinkedList is Good at inserting or deleting from either end, or while using an Iterator. Both are Poor at inserting or deleting from the middle if you aren't using an Iterator. [ January 23, 2008: Message edited by: Jim Yingst ]