LinkedList implements the Queue interface, whereas ArrayList does not. ArrayList implements RandomAccess, though (which LinkedList does not). The javadocs of both classes talk some more about their respective advantages and disadvantages.
ArrayList is backed by an array. A LinkedList is a http://en.wikipedia.org/wiki/Linked_list. Once built, accessing elements by index from an ArrayList is much faster. For volatile lists, LinkedList is better. When building an ArrayList, make note of the ArrayList(int) constructor -- using that is important when creating large lists. :-)
Aditi Gandy wrote:May i know what is the difference between ArrayList and LinkedList? both are not synchronized !
Same discuss here Also see Deque which is double-ended queue.
The Deque interface extends from the Queue interface introduced with Java 5, and is the latest addition to the Java Collections Framework. Implementations of the interface include LinkedList, ArrayDeque and LinkedBlockingDeque.