Saturday 10 June 2017

ArrayList in java


ArrayList is a class that extends AbstractList class and implements List interface in java. 

It uses dynamic array for storing the elements thus gaining upper hand in comparison to Array (which is static in nature and has fixed length).


Key feature of ArrayList:

1. It implements List interface, RandomAccess interface, Collection interface, Iterable interface, Cloneable interface and Serializable interface.
2. It is a part of java.util package.
3. ArrayList can expand and shrink automatically as per the need because of its dynamic array storage capability.
4. ArrayList is not synchronized (else it would have been roughly equivalent to Vector).
5. It permits all element, including null.
6. ArrayList is generally slow while manipulating the elements as during insertion or deletion lot of shifting needs to be done.


Now let’s look at the ways in which you can create ArrayList in java. 

·         ArrayList<E> myList = new ArrayList <E>();     //<E> denotes generics
·         ArrayList<E> myList = new ArrayList <E>(Collection c);//<E> denotes generics

Simple Example:


package javaRadarArrayList;

import java.util.ArrayList;

public class SimpleArrayList {

      public static void main(String[] args) {
            //create Array List
            ArrayList<String> javaRadarList = new ArrayList<String>();
            //Add elements to ArrayList
            javaRadarList.add("Java");
            javaRadarList.add("Spring");
            javaRadarList.add("Hibernate");
            javaRadarList.add("EJB");

            System.out.println(javaRadarList);
      }


}




Now let’s look at different ways in which you can use the ArrayList that you created. 
Click on each link to read about them.

ArrayList operations

·         Sort the elements in ArrayList
·         Search element in ArrayList

Traverse ArrayList


Convert

·       ArrayList to LinkedList



ArrayList or LinkedList. Which one to use?(Click to see the difference between two and decide)


How to synchronize ArrayList?

So far we have learned that ArrayList is non-synchronized but still what to do if we need to synchronize it.
So java provides a solution to synchronize your ArrayList. Use synchronizedList() method provided by Collections utility class.

                Collections.synchronizedList(List list)


No comments:

Post a Comment

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
If you are looking for a reference book on java then we recommend you to go for → Java The Complete Reference
Click on the image link below to get it now.