Wow, there's a lot of untruth in this
thread.
Well, first of all, we don't really have a linked list in Java, strictly.
Actually, we do: the java.util.LinkedList class.
Is [ArrayList] implemented using a linked list? Probably. I think so. The point is who knows, and who cares.
Well, actually, it's not, and everyone knows, and everyone should care.
ArrayList is well-documented to use an array as a backing store. This has a very specific impact on its performance characteristics. Accessing the 37th element of an ArrayList is very fast. Deleting an element in the middle is slow. This is quite the opposite of how a linked list behaves. That's why there are both: so you can choose which to use based on what's important for your appplication.
So what it means is that there is just the difference of dynamisn between linklist and arraylist i.e arraylist size can be dynamically increased.I
Both an ArrayList and a LinkedList can have elements added to them and/or removed from them, so no, that's not the difference. The difference is the performance, as mentioned above and as described in more detail in the Javadocs. If you need to delete elements in the middle, use a LinkedList. If you need random access, then an ArrayList may be better. Note that LinkedLists have more memory overhead, too.