Teachnique
      CourseRoadmaps
      Login

      OverviewHistoryFeaturesJava 8 - New Featuresvs C++Virtual Machine(JVM)JDK vs JRE vs JVMHello World ProgramEnvironment SetupBasic SyntaxVariable TypesData TypesType CastingUnicode SystemBasic OperatorsCommentsStreamsNew Date-Time API

      Loop ControlDecision Makingif-else Statementswitch statementfor loopfor each Loopwhile Loopdo...while Loopbreak Statementcontinue Statement

      OOPs (Object-Oriented Programming) ConceptsObject and ClassesClass AttributesClass MethodsMethodsVariable ScopesConstructorsAccess ModifiersInheritanceAggregationPolymorphismOverridingMethod OverloadingDynamic BindingStatic BindingInstance Initializer BlockAbstractionEncapsulationInterfacesPackagesInner classesStatic ClassesAnonymous ClassesSingleton ClassWrapper ClassesEnum Class

      Number ClassBoolean classCharacter ClassArraysMath Class

      File ClassCreating FilesWrite To FilesReading FileDelete FilesDirectory OperationsFiles and I/O

      ExceptionsTry Catch BlockTry with ResourcesMultiple Catch BlocksNested Try BlockFinally BlockThrows and Throw | Throw an ExceptionException PropagationBuilt-in ExceptionsCustom Exception

      MultithreadingThread Life CycleCreating a ThreadStarting a ThreadJoining ThreadsNaming a Thread with ExamplesScheduling Threads with ExamplesThread PoolsMain ThreadThread PriorityDaemon ThreadThreadGroup ClassJVM Shutdown Hook

      Thread SynchronizationBlock SynchronizationStatic SynchronizationInter Thread CommunicationThread DeadlockInterrupting ThreadThread ControlReentrant Monitor

      NetworkingSocket ProgrammingURL ProcessingURL ClassURLConnection ClassHttpURLConnection ClassSocket Class with ExamplesGenerics

      Collections FrameworkCollection Interface

      List InterfaceArrayList Class

      Queue InterfaceArrayDeque Class

      Map InterfaceSortedMap Interface

      Set InterfaceSortedSet Interface

      Data Structures Enumeration Interface BitSet Class

      How to Use Iterator?How to Use Comparator?How to Use Comparable?

      RecursionRegular ExpressionsSerializationString ClassJava Arrays - Class

      Feedback

      Submit request if you have any questions.

      Course
      ArrayList Class

      Java Tutorial

      This Java tutorial is tailored for newcomers, offering a journey from basic principles to complex Java programming techniques. Completing this tutorial equips you with a solid understanding of Java, preparing you for advanced learning. You'll emerge ready to tackle the challenges of becoming a top-tier software engineer, with the skills to innovate and excel in the vast world of software development.

      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
      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.

      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]
      
      Print Page