Programming

What is the difference between ArrayList and LinkedList in Java?

Short answer

ArrayList stores elements in a resizable array, giving fast random access but slower inserts/deletes in the middle; LinkedList stores elements as linked nodes, giving fast inserts/deletes but slower random access.

Both implement Java's List interface, so they support the same basic operations, but their internal structure creates very different performance trade-offs.

ArrayList

LinkedList

In practice, ArrayList is the more commonly used default in Java, since most workloads read more often than they insert into the middle of a list.

Last reviewed: September 2026