Almost always List
is preferred over ArrayList
because, for instance, List
can be translated into a LinkedList
without affecting the rest of the codebase.
If one used ArrayList
instead of List
, it’s hard to change the ArrayList
implementation into a LinkedList
one because ArrayList
specific methods have been used in the codebase that would also require restructuring.
You can read about the List
implementations here.
You may start with an ArrayList
, but soon after discover that another implementation is the more appropriate choice.
Related Posts:
- How to avoid “ConcurrentModificationException” while removing elements from `ArrayList` while iterating it? [duplicate]
- Difference between Arrays.asList(array) and new ArrayList
(Arrays.asList(array)) - Convert list to array in Java [duplicate]
- Converting array to list in Java
- Convert Set to List without creating new List
- Generic Interface
- Implements vs extends: When to use? What’s the difference?
- stale element reference: element is not attached to the page document
- Why do I get an UnsupportedOperationException when trying to remove an element from a List?
- How to initialize List
object in Java? - Is there a concurrent List in Java’s JDK?
- “Instantiating” a List in Java? [duplicate]
- Create a List of primitive int?
- How to print out all the elements of a List in Java?
- List of Arrays in Java
- Incompatible types List of List and ArrayList of ArrayList
- Can a normal Class implement multiple interfaces?
- Why is there no multiple inheritance in Java, but implementing multiple interfaces is allowed?
- Fields in interfaces
- How to print out all the elements of a List in Java?
- What’s the difference between HashSet and Set?
- convert string to arraylist
in java - How do I join two lists in Java?
- When to use a Map instead of a List in Java?
- What is the purpose of the default keyword in Java?
- Error message ‘Cannot be resolved or is not a field’
- What does Java option -Xmx stand for? [duplicate]
- How do I convert a String to an int in Java?
- What does Java option -Xmx stand for? [duplicate]
- Is there an invisible character that is not regarded as whitespace?
- Problem with gif with transparent background
- Finding white rectangle in an image
- 1000 * 60 * 60 * 24 * 30 results in a negative number [duplicate]
- How to convert nanoseconds to seconds using the TimeUnit enum?
- Search for words with telephone numbers from 2-3-4 tree
- Using or ‘|’ in regex [duplicate]
- How to format strings in Java
- What is the difference between x86 and x64
- && (AND) and || (OR) in IF statements
- How to use the toString method in Java?
- What is a NullPointerException, and how do I fix it?
- What exactly is Apache Camel?
- Unable to find valid certification path to requested target – error even after cert imported
- Unable to find valid certification path to requested target – error even after cert imported
- What is the equivalent of the C++ Pair
in Java? - Java – Convert integer to string [duplicate]
- Getting random numbers in Java [duplicate]
- What is an instance variable in Java?
- javac is not recognized as an internal or external command, operable program or batch file [closed]
- javac is not recognized as an internal or external command, operable program or batch file [closed]
- Java: “error: cannot find symbol”
- How does the Java ‘for each’ loop work?
- What is a StackOverflowError?
- How to uninstall Eclipse?
- Is GNU’s Java Compiler (GCJ) dead? [closed]
- How does System.out.print() work?
- How do I “decompile” Java class files? [closed]
- How do I determine whether an array contains a particular value in Java?
- How to initialize an array in Java?
- How does the Java ‘for each’ loop work?
- Java 8 Iterable.forEach() vs foreach loop
- Initialize part of an array in java
- How can I solve Exception in thread “main” java.lang.NullPointerException error [duplicate]
- How to split a string in Java
- What does “Could not find or load main class” mean?
- What does “Could not find or load main class” mean?
- Why am I getting a NoClassDefFoundError in Java?
- Eclipse/Maven error: “No compiler is provided in this environment”
- How do I compare strings in Java?
- What is reflection and why is it useful?
- Implementing UML diagram to Java [closed]
- How to round a number to n decimal places in Java
- Using Pairs or 2-tuples in Java [duplicate]
- How do I create a file and write to it?
- Could not reserve enough space for object heap
- When to use LinkedList over ArrayList in Java?
- How to convert a char to a String?
- What is the proper way to handle a NumberFormatException when it is expected?
- What causes “Unable to access jarfile” error?
- What does “Could not find or load main class” mean?
- How do you create a dictionary in Java? [closed]
- Reading a plain text file in Java
- Error unable to access jarfile C:\Jar
- Where is JRE 11? [duplicate]
- In laymans terms, what does ‘static’ mean in Java? [duplicate]
- How to convert/parse from String to char in java?
- Reverse a string in Java
- Static Classes In Java
- Is there any doubly linked list implementation in Java?
- How to set a Timer in Java?
- How do I declare and initialize an array in Java?
- How to parse JSON in Java
- Is there a way to convert all comments into javadoc comments? [Eclipse/Java]
- Reverse a string in Java
- Sort an array in Java
- Java String Split by “|”
- Convert String to double in Java
- Exception in thread “main” java.util.NoSuchElementException
- Could not reserve enough space for object heap
- Converting double to string