Java Collections

ArrayList is Collection in java.util package which extends AbstractList class and implements List Interface.
It also implements RandomAccess,Cloneable and Serializable interfaces
RandomAccess ,Cloneable and Serializable interfaces doesnot have any meth…


This content originally appeared on DEV Community and was authored by DEV Community

ArrayList is Collection in java.util package which extends AbstractList class and implements List Interface.
It also implements RandomAccess,Cloneable and Serializable interfaces
RandomAccess ,Cloneable and Serializable interfaces doesnot have any methods to implement.
They are to say that ArrayList can be accessed random with constant time and we can use the clone() method and it can be Serializable

When we add new element for the first time it will have the initial capacity of 10 and then the element will be added.
ArrayList has grow() method which will be called when we start adding more element Arrays.copyOf(elementData,newCapacity) will be returned with the updated Array.
Method in ArrayList :

private void grow(int minCapacity) {

It checks the range so in case the index that we pass exceeds the size it throws IndexOutOfBoundException.
Method in ArrayList

private void rangeCheck(int index) {

It has clear method which will loop through each index and set the value to null and let GC take care of it and set the size to 0.

Method in ArrayList

public void clear() {

writeObject and readObject methods help for Serialization and Deserialization.
Methods in ArrayList
`
private void writeObject(java.io.ObjectOutputStream s){

private void readObject(java.io.ObjectInputStream s)
throws java.io.IOException, ClassNotFoundException {
`

Example to add elements in ArrayList and iterate in multiple ways

package com.corejava.oops.collections;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class ArrayListTest {

    public static void main(String[] args) {


        List<String>  test = new ArrayList<>();

        test.add("Tester1"); //index - 0
        test.add("Tester2"); //index - 1
        test.add("Tester3"); //index - 2
        test.add("Tester4"); //index - 3


        for(int i=0;i<test.size();i++) {

            System.out.println("In For Loop :" +test.get(i));

        }

        for(String a : test) {

            System.out.println("In Enhanced for loop : "+a);

        }

        Iterator<String> it = test.iterator();

        while(it.hasNext()) {
            System.out.println("In While Loop :" + it.next());

        }

        test.stream().forEach(System.out::println);

    }

}


This content originally appeared on DEV Community and was authored by DEV Community


Print Share Comment Cite Upload Translate Updates
APA

DEV Community | Sciencx (2022-02-27T18:27:38+00:00) Java Collections. Retrieved from https://www.scien.cx/2022/02/27/java-collections/

MLA
" » Java Collections." DEV Community | Sciencx - Sunday February 27, 2022, https://www.scien.cx/2022/02/27/java-collections/
HARVARD
DEV Community | Sciencx Sunday February 27, 2022 » Java Collections., viewed ,<https://www.scien.cx/2022/02/27/java-collections/>
VANCOUVER
DEV Community | Sciencx - » Java Collections. [Internet]. [Accessed ]. Available from: https://www.scien.cx/2022/02/27/java-collections/
CHICAGO
" » Java Collections." DEV Community | Sciencx - Accessed . https://www.scien.cx/2022/02/27/java-collections/
IEEE
" » Java Collections." DEV Community | Sciencx [Online]. Available: https://www.scien.cx/2022/02/27/java-collections/. [Accessed: ]
rf:citation
» Java Collections | DEV Community | Sciencx | https://www.scien.cx/2022/02/27/java-collections/ |

Please log in to upload a file.




There are no updates yet.
Click the Upload button above to add an update.

You must be logged in to translate posts. Please log in or register.