Java LinkedList
Java LinkedList
In the previous chapter, you learned about the ArrayList
class. The LinkedList
class is
almost identical to the
ArrayList
:
ExampleGet your own Java Server
// Import the LinkedList class
import java.util.LinkedList;
public class Main {
public static void main(String[] args) {
LinkedList<String> cars = new LinkedList<String>();
cars.add("Volvo");
cars.add("BMW");
cars.add("Ford");
cars.add("Mazda");
System.out.println(cars);
}
}
ArrayList vs. LinkedList
The LinkedList
class is a collection which can contain many objects of the same type,
just like the ArrayList
.
The LinkedList
class has the same methods as ArrayList
because both follow the List
interface.
This means you can add, change, remove, or clear elements in a LinkedList
just like you would with an ArrayList
.
However, while the ArrayList
class and the LinkedList
class can be used in the same way,
they are built very differently.
How the ArrayList works
The ArrayList
class has a regular array inside it. When an element is added, it is placed
into the array. If the array is not big enough, a new, larger array is created to replace the
old one and the old one is removed.
How the LinkedList works
The LinkedList
stores its elements in "containers." The list has a link to the first container
and each container has a link to the next container in the list. To add an element to the list,
the element is placed into a new container and that container is linked to one of the other
containers in the list.
When To Use
Use an ArrayList
for storing and accessing data, and LinkedList
to
manipulate data.
LinkedList Methods
For many cases, the ArrayList
is more efficient as it is common to need access to
random elements in the list, but the LinkedList
provides several methods to do certain
operations more efficiently:
Method | Description | Try it |
---|---|---|
addFirst() |
Adds an element to the beginning of the list | Try it » |
addLast() |
Add an element to the end of the list | Try it » |
removeFirst() |
Remove an element from the beginning of the list | Try it » |
removeLast() |
Remove an element from the end of the list | Try it » |
getFirst() |
Get the element at the beginning of the list | Try it » |
getLast() |
Get the element at the end of the list | Try it » |
Complete LinkedList Reference
For a complete reference of LinkedList methods, go to our Java LinkedList Reference.
Exercise?What is this?
Test your skills by answering a few questions about the topics of this page
True or False:
The LinkedList class is a collection which can contain many objects of the same type.