Java - The ArrayList Class



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 is the list of the constructors provided by the ArrayList class.

Sr.No. Constructor & Description
1

ArrayList( )

This constructor builds an empty array list.

2

ArrayList(Collection c)

This constructor builds an array list that is initialized with the elements of the collection c.

3

ArrayList(int capacity)

This constructor builds an array list that has the specified initial capacity. The capacity is the size of the underlying array that is used to store the elements. The capacity grows automatically as elements are added to an array list.

Apart from the methods inherited from its parent classes, ArrayList defines the following methods −

Sr.No. Method & Description
1 boolean add(E e)

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 void clear()

This method removes all of the elements from this list.

4 Object clone()

This method returns a shallow copy of this ArrayList instance.

5 boolean contains(Object o)

This method returns true if this list contains the specified element.

6 void ensureCapacity(int minCapacity)

This increases the capacity of this ArrayList.

7 E get(int index)

This method returns the element at the specified position in this list.

8 int indexOf(Object o)

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 boolean isEmpty()

This method returns true if this list contains no elements.

10 Iterator<E> iterator()

This method returns an iterator over the elements in this list in proper sequence.

11 int lastIndexOf(Object o)

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 E remove(int index)

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 E set(int index, E element)

This method replaces the element at the specified position in this list with the specified element.

18 int size()

This method returns the number of elements in this list.

19 Spliterator<E> spliterator()

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 Object[] toArray()

This method returns an array containing all of the elements in this list in proper sequence (from first to last element).

22 void trimToSize()

This method trims the capacity of this ArrayList instance to be the list's current size.

Example

The following 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 −

Output

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]
Advertisements