ArrayList in Java

ArrayList in Java

Objectives

  • Understand ArrayList in Java.

  • Efficiently manage collections of objects.

  • Enhance code readability.

  • Improve program performance.

What is ArrayList?

  • A resizable array.

  • Also known as a Dynamic Array.

  • In contrast to Array, ArrayList enables the user to use it without declaring the value and size as it automatically adjusts its capacity.

  • It allows users to manipulate data inside the ArrayList by adding, removing, accessing, and changing the value of elements.

Methods that can be used in ArrayList

  1. add() - Adds elements inside the ArrayList.

  2. remove() – Removes an element using the index number.

  3. get() – Accesses an element using the index number.

  4. set() – Modifies an element referring to the index number.

  5. clear() – Removes all elements in the ArrayList.

  6. size() – Finds out how many elements are inside the ArrayList.

Creating an ArrayList

  • Before using ArrayList, you need to import the package first:
    java import java.util.ArrayList;

  • Initializing ArrayList, the TYPE here indicates the data type:
    java ArrayList<String> Name = new ArrayList<>();

Method Examples

1. add()
  • Adds elements inside the ArrayList.

    package SampleForm;
    import java.util.ArrayList;
    public class ArrayListUsingAdd {
        public static void main(String[] args) {
            ArrayList<String> Name = new ArrayList<>();
            Name.add("Karina");
            Name.add("Winter");
            Name.add("Giselle");
            Name.add("Ningning");
            System.out.println(Name);
        }
    }
    

    Output:

    [Karina, Winter, Giselle, Ningning]
    

    Example using javax.swing.JFrame:

    package SampleForm;
    import java.util.ArrayList; // import
    public class ArrayListSample extends javax.swing.JFrame {
        public ArrayList<String> Color = new ArrayList<>(); //initialize arrayList
        String UserInput;
        public ArrayListSample() {
            initComponents();
        }
        @SuppressWarnings("unchecked")
        //Generated Code
        private void AddActionPerformed(java.awt.event.ActionEvent evt) {
            UserInput = UserField.getText();
            Color.add(UserInput);
            UserField.setText("");
            System.out.println(Color);
        }
    }
    

    Button Functionality:

    • Gets the value from the user and adds it to the ArrayList named Color.

2. get()
  • Accesses an element using the index number.

    package SampleForm;
    import java.util.ArrayList;
    public class ArrayListUsingAdd {
        public static void main(String[] args) {
            ArrayList<String> Name = new ArrayList<>();
            Name.add("Karina");
            Name.add("Winter");
            Name.add("Giselle");
            Name.add("Ningning");
            String Display = Name.get(3);
            System.out.println(Display);
        }
    }
    

    Output:

    Ningning
    

    Button Functionality:

    • Gets the number from the user and displays the output according to its index.

    private void GetActionPerformed(java.awt.event.ActionEvent evt) {
        UserInput = UserField.getText();
        int value = Integer.parseInt(UserInput);
        System.out.println(Color.get(value));
    }
    

    Example:

    • ArrayList: [Anna, Sam]

    • Output if user inputs index 1: Sam

3. remove()
  • Removes an element inside the ArrayList using the index number.

    Button Functionality:

    • Gets the user input and uses the method indexOf() to check the index of the inserted value and remove it.

4. set()
  • Modifies an element referring to the index number.

    package SampleForm;
    import java.util.ArrayList;
    public class ArrayListUsingAdd {
        public static void main(String[] args) {
            ArrayList<String> Name = new ArrayList<>();
            Name.add("Karina");
            Name.add("Winter");
            Name.add("Giselle");
            Name.add("Ningning");
            Name.set(0, "Naevis");
            System.out.println(Name);
        }
    }
    

    Output:

    [Naevis, Winter, Giselle, Ningning]
    

    Button Functionality:

    • Adds value first on ArrayList and input the inserted value on first JOptionPane after that change the value.

    • Checks if there are changes in the ArrayList.

5. clear()
  • Removes all elements in the ArrayList.

    package SampleForm;
    import java.util.ArrayList;
    public class ArrayListUsingAdd {
        public static void main(String[] args) {
            ArrayList<String> Name = new ArrayList<>();
            Name.add("Karina");
            Name.add("Winter");
            Name.add("Giselle");
            Name.add("Ningning");
            Name.clear();
            System.out.println(Name);
        }
    }
    

    Output:

    []
    

    Button Functionality:

    private void clearActionPerformed(java.awt.event.ActionEvent evt) {
        System.out.println("Previous ArrayList Values: " + Color);
        Color.clear();
        System.out.println("After clearing: " + Color);
    }
    

    Example:

    • Previous ArrayList Values: [a, v, c, d, e]

    • After clearing: []

6. size()
  • Finds out how many elements are inside the ArrayList.

    package SampleForm;
    import java.util.ArrayList;
    public class ArrayListUsingAdd {
        public static void main(String[] args) {
            ArrayList<String> Name = new ArrayList<>();
            Name.add("Karina");
            Name.add("Winter");
            Name.add("Giselle");
            Name.add("Ningning");
            int ArrayListSize = Name.size();
            System.out.println(ArrayListSize);
        }
    }
    

    Output:

    4
    

    Button Functionality:

    • Gets the size of ArrayList depending on the added values.

      private void SizeActionPerformed(java.awt.event.ActionEvent evt) {
          int ArrayListSize = Color.size();
          System.out.println("ArrayList Size: " + ArrayListSize);
      }
      

    Example:

    • ArrayList: [INF231, INF232, INF233, INF234]

    • Output: ArrayList Size: 4