- Java.util Package Classes
- Java.util - Home
- Java.util - ArrayDeque
- Java.util - ArrayList
- Java.util - Arrays
- Java.util - BitSet
- Java.util - Calendar
- Java.util - Collections
- Java.util - Currency
- Java.util - Date
- Java.util - Dictionary
- Java.util - EnumMap
- Java.util - EnumSet
- Java.util - Formatter
- Java.util - GregorianCalendar
- Java.util - HashMap
- Java.util - HashSet
- Java.util - Hashtable
- Java.util - IdentityHashMap
- Java.util - LinkedHashMap
- Java.util - LinkedHashSet
- Java.util - LinkedList
- Java.util - ListResourceBundle
- Java.util - Locale
- Java.util - Observable
- Java.util - PriorityQueue
- Java.util - Properties
- Java.util - PropertyPermission
- Java.util - PropertyResourceBundle
- Java.util - Random
- Java.util - ResourceBundle
- Java.util - ResourceBundle.Control
- Java.util - Scanner
- Java.util - ServiceLoader
- Java.util - SimpleTimeZone
- Java.util - Stack
- Java.util - StringTokenizer
- Java.util - Timer
- Java.util - TimerTask
- Java.util - TimeZone
- Java.util - TreeMap
- Java.util - TreeSet
- Java.util - UUID
- Java.util - Vector
- Java.util - WeakHashMap
- Java.util Package Extras
- Java.util - Interfaces
- Java.util - Exceptions
- Java.util - Enumerations
- Java.util Useful Resources
- Java.util - Useful Resources
- Java.util - Discussion
Java ArrayList Class
Introduction
The ArrayList class extends AbstractList and implements the List interface. ArrayList supports dynamic arrays that can grow as needed.
Standard Java arrays are of a fixed length. After arrays are created, they cannot grow or shrink, which means that you must know in advance how many elements an array will hold.
Array lists are created with an initial size. When this size is exceeded, the collection is automatically enlarged. When objects are removed, the array may be shrunk.
Following are the important points about ArrayList −
It implements all optional list operations and it also permits all elements, includes null.
It provides methods to manipulate the size of the array that is used internally to store the list.
The constant factor is low compared to that for the LinkedList implementation.
ArrayList Class Declaration
Following is the declaration for java.util.ArrayList class −
public class ArrayList<E> extends AbstractList<E> implements Serializable, Cloneable, Iterable<E>, Collection<E>, List<E>, RandomAccess
Here <E> represents an Element. For example, if you're building an array list of Integers then you'd initialize it as
ArrayList<Integer> list = new ArrayList<Integer>();
ArrayList Class Constructors
Following is the list of the constructors provided by the ArrayList class -
Sr.No. |
Constructor & Description |
---|---|
1 |
ArrayList() This constructor is used to create an empty list with an initial capacity sufficient to hold 10 elements. |
2 |
ArrayList(Collection<? extends E> c) This constructor is used to create a list containing the elements of the specified collection. |
3 |
ArrayList(int initialCapacity) This constructor is used to create an empty list with an initial capacity. |
ArrayList Class Methods
Sr.No. |
Method & Description |
---|---|
1 |
This method appends the specified element to the end of this list. |
2 |
boolean addAll(Collection<? extends E> c) This method appends all of the elements in the specified collection to the end of this list, in the order that they are returned by the specified collection's Iterator |
3 |
This method removes all of the elements from this list. |
4 |
This method returns a shallow copy of this ArrayList instance. |
5 |
This method returns true if this list contains the specified element. |
6 |
void ensureCapacity(int minCapacity) This increases the capacity of this ArrayList. |
7 |
This method returns the element at the specified position in this list. |
8 |
This method returns the index of the first occurrence of the specified element in this list, or -1 if this list does not contain the element. |
9 |
This method returns true if this list contains no elements. |
10 |
This method returns an iterator over the elements in this list in proper sequence. |
11 |
This method returns the index of the last occurrence of the specified element in this list, or -1 if this list does not contain the element. |
12 |
ListIterator<E> listIterator() This method returns an list iterator over the elements in this list in proper sequence. |
13 |
This method removes the element at the specified position in this list. |
14 |
boolean removeAll(Collection<?> c) Removes from this list all of its elements that are contained in the specified collection. |
15 |
protected void removeIf(int fromIndex, int toIndex) This method Removes all of the elements of this collection that satisfy the given predicate. |
16 |
boolean retainAll(Collection<?> c) Retains from this list all of its elements that are contained in the specified collection. |
17 |
This method replaces the element at the specified position in this list with the specified element. |
18 |
This method returns the number of elements in this list. |
19 |
This method creates a late-binding and fail-fast Spliterator over the elements in this list. |
20 |
List<E> subList(int fromIndex, int toIndex) This method returns a view of the portion of this list between the specified fromIndex, inclusive, and toIndex, exclusive. |
21 |
This method returns an array containing all of the elements in this list in proper sequence (from first to last element). |
22 |
This method trims the capacity of this ArrayList instance to be the list's current size. |
Methods Inherited
This class inherits methods from the following classes −
java.util.AbstractList
java.lang.AbstractCollection
java.util.Object
java.util.List
ArrayList Class Example
This Java program illustrates several of the methods supported by ArrayList −
import java.util.*; public class ArrayListDemo { public static void main(String args[]) { // create an array list ArrayList al = new ArrayList(); System.out.println("Initial size of al: " + al.size()); // add elements to the array list al.add("C"); al.add("A"); al.add("E"); al.add("B"); al.add("D"); al.add("F"); al.add(1, "A2"); System.out.println("Size of al after additions: " + al.size()); // display the array list System.out.println("Contents of al: " + al); // Remove elements from the array list al.remove("F"); al.remove(2); System.out.println("Size of al after deletions: " + al.size()); System.out.println("Contents of al: " + al); } }
This will produce the following result −
Initial size of al: 0 Size of al after additions: 7 Contents of al: [C, A2, A, E, B, D, F] Size of al after deletions: 5 Contents of al: [C, A2, E, B, D]