How to add an element to an Array in Java?

Given an array of size n, the task is to add an element x in this array in Java.

The size of the array cannot be changed dynamically in Java, as it is done in C/C++. Hence in order to add an element in the array, one of the following methods can be done:

  1. By creating a new array:
    • Create a new array of size n+1, where n is the size of the original array.
    • Add the n elements of the original array in this array.
    • Add the new element in the n+1 th position.
    • Print the new array.

    Below is the implementation of the above approach:



    filter_none

    edit
    close

    play_arrow

    link
    brightness_4
    code

    // Java Program to add an element in an Array
      
    import java.io.*;
    import java.lang.*;
    import java.util.*;
      
    class GFG {
      
        // Function to add x in arr
        public static int[] addX(int n, int arr[], int x)
        {
            int i;
      
            // create a new array of size n+1
            int newarr[] = new int[n + 1];
      
            // insert the elements from
            // the old array into the new array
            // insert all elements till n
            // then insert x at n+1
            for (i = 0; i < n; i++)
                newarr[i] = arr[i];
      
            newarr[n] = x;
      
            return newarr;
        }
      
        // Driver code
        public static void main(String[] args)
        {
      
            int n = 10;
            int i;
      
            // initial array of size 10
            int arr[]
                = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
      
            // print the original array
            System.out.println("Initial Array:\n"
                               + Arrays.toString(arr));
      
            // element to be added
            int x = 50;
      
            // call the method to add x in arr
            arr = addX(n, arr, x);
      
            // print the updated array
            System.out.println("\nArray with " + x
                               + " added:\n"
                               + Arrays.toString(arr));
        }
    }

    chevron_right

    
    

    Output:

    Initial Array:
    [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
    
    Array with 50 added:
    [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 50]
    
  2. By using ArrayList as intermediate storage:
    • Create an ArrayList with the original array, using asList() method.
    • Simply add the required element in the list using add() method
    • Convert the list to an array using toArray() method
    filter_none

    edit
    close

    play_arrow

    link
    brightness_4
    code

    // Java Program to add an element in an Array
      
    import java.io.*;
    import java.lang.*;
    import java.util.*;
      
    class GFG {
      
        // Function to add x in arr
        public static Integer[] addX(int n, Integer arr[], int x)
        {
            int i;
      
            // create a new ArrayList
            List<Integer> arrlist
                = new ArrayList<Integer>(
                    Arrays.asList(arr));
      
            // Add the new element
            arrlist.add(x);
      
            // Convert the Arraylist to array
            arr = arrlist.toArray(arr);
      
            // return the array
            return arr;
        }
      
        // Driver code
        public static void main(String[] args)
        {
      
            int n = 10;
            int i;
      
            // initial array of size 10
            Integer arr[]
                = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
      
            // print the original array
            System.out.println("Initial Array:\n"
                               + Arrays.toString(arr));
      
            // element to be added
            int x = 50;
      
            // call the method to add x in arr
            arr = addX(n, arr, x);
      
            // print the updated array
            System.out.println("\nArray with " + x
                               + " added:\n"
                               + Arrays.toString(arr));
        }
    }

    chevron_right

    
    

    Output:

    Initial Array:
    [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
    
    Array with 50 added:
    [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 50]
    


My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.




Article Tags :
Practice Tags :


Be the First to upvote.


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.