Core Java

Java ArrayList Insert/Replace At Index

Photo of Venkatesh NukalaVenkatesh NukalaJanuary 8th, 2022Last Updated: January 2nd, 2022
0 33,433 4 minutes read

A quick guide to insert or replace the element at the specified index in java.

1. Overview

In this tutorial, We’ll learnhow to insert or replace an element at a specified index into ArrayList java.

Use theArrayList.add(int index, Object value)method toadd any object or element at the specific index of ArrayList and useArrayList.set(int index, E  value) to replace the value at thespecific index of ArrayList in java.

Let us explore the examples

All examples shown in this article are on GitHub and a link is given at the end of the post.

2.  Example – How to insert a value at a specific index of ArrayList in Java?

ArrayList.add(int index, E element) method takes the index of the array list where the new value to be inserted and E element that the new value to be added to the existing values of ArrayList.

add(index, value) method is used to insert the given element at the given index position of ArrayList.

Let us look at the below example of howadd() is called on ArrayList to add the new value at index 3.

Example 1

package com.javaprogramto.java8.arraylist.insert;import java.util.ArrayList;import java.util.List;public class ArrayListInsertAddExample {public static void main(String[] args) {List<Integer> list1 = new ArrayList<>();list1.add(10);list1.add(20);list1.add(30);list1.add(40);list1.add(50);list1.add(60);System.out.println("List values before insertion - " + list1);list1.add(3, 333);System.out.println("List values after inserting the value 333 at index 3 - " + list1);}}

Output:

List values before insertion - [10, 20, 30, 40, 50, 60]List values after inserting the value 333 at index 3 - [10, 20, 30, 333, 40, 50, 60]

From the output, we can see that a new value 333 is added at index 3 and right to the values of index 3 are shifted by one index. Also, the size is increased by 1.

Example 2

System.out.println("List values before insertion - " + list1);System.out.println("list1 size before - "+list1.size());list1.add(3, 333);System.out.println("List values after inserting the value 333 at index 3 - " + list1);System.out.println("list1 size after - "+list1.size());

Output

List values before insertion - [10, 20, 30, 40, 50, 60]list1 size before - 6List values after inserting the value 333 at index 3 - [10, 20, 30, 333, 40, 50, 60]list1 size after - 7

Another example 3

The below code is withList of Strings.

package com.javaprogramto.java8.arraylist.insert;import java.util.ArrayList;import java.util.List;public class ArrayListInsertAddExample2 {public static void main(String[] args) {List<String> list2 = new ArrayList<>();list2.add("one");list2.add("two");list2.add("three");list2.add("four");list2.add("five");list2.add("six");System.out.println("List2 values before insertion - " + list2);System.out.println("list2 size before - "+list2.size());list2.add(3, "new four");System.out.println("List2 values after inserting the value 333 at index 3 - " + list2);System.out.println("list2 size after - "+list2.size());}}

Output

List2 values before insertion - [one, two, three, four, five, six]list2 size before - 6List2 values after inserting the value 333 at index 3 - [one, two, three, new four, four, five, six]list2 size after - 7

How to sort ArrayList in descending order in java 8?

3.  Example – How to replace or update a value at a specific index of ArrayList in Java?

To update or replace the existing value with the new value of ArrayList, use set(int index, E element) with the index and new value.

Example 4

package com.javaprogramto.java8.arraylist.insert;import java.util.ArrayList;import java.util.List;public class ArrayListUpdateSetExample3 {public static void main(String[] args) {List<Integer> list1 = new ArrayList<>();list1.add(10);list1.add(20);list1.add(30);list1.add(40);list1.add(50);list1.add(60);System.out.println("List1 values before update - " + list1);System.out.println("list1 size before - "+list1.size());list1.set(3, 333);System.out.println("List1 values after updating index 3 value with new value 333 - " + list1);System.out.println("list1 size after - "+list1.size());}}

Output

List1 values before update - [10, 20, 30, 40, 50, 60]list1 size before - 6List1 values after updating index 3 value with new value 333 - [10, 20, 30, 333, 50, 60]list1 size after - 6

From the output, we can see that index 3 value 40 is removed from the list and updated with the new value 333.

After replacing the index 3 value, the list size is unchanged. So, list size is not modified and maintained the same original list.

We can use the set() for any type of object such as wrapper classes, String or any user-defined custom objects.

4. Example to update the value of List while Iterating

It is allowed to update the values of the array list based on the condition while iterating it with the help of
set() method.

Example 5

In the below example, if the number is divisible by 5 then update the value to -1 otherwise do not replace the value.

package com.javaprogramto.java8.arraylist.insert;import java.util.ArrayList;import java.util.List;public class ArrayListUpdateSetIterateExample4 {public static void main(String[] args) {List<Integer> list1 = new ArrayList<>();list1.add(4);list1.add(10);list1.add(24);list1.add(25);list1.add(5);list1.add(28);System.out.println("List1 values before update - " + list1);System.out.println("list1 size before - " + list1.size());for (int index = 0; index < list1.size(); index++) {if (list1.get(index) % 5 == 0) {list1.set(index, -1);}}System.out.println("List1 values after updating index 3 value with new value 333 - " + list1);System.out.println("list1 size after - " + list1.size());}}

Output

List1 values before update - [4, 10, 24, 25, 5, 28]list1 size before - 6List1 values after updating index 3 value with new value 333 - [4, -1, 24, -1, -1, 28]list1 size after - 6

All values from the list which are divisible by 5 are updated to -1 and the list size is unchanged.

5. Conclusion

In this article, We’ve seenhow to update or insert the new value at the specific index of ArrayList in java.

GitHub

ArrayList API

Arraylist add() examples

How to convert ArrayList to String in Java 8?

Published on Java Code Geeks with permission by Venkatesh Nukala, partner at ourJCG program. See the original article here:Java ArrayList Insert/Replace At Index

Opinions expressed by Java Code Geeks contributors are their own.

Do you want to know how to develop your skillset to become aJava Rockstar?
Subscribe to our newsletter to start Rockingright now!
To get you started we give you our best selling eBooks forFREE!
1. JPA Mini Book
2. JVM Troubleshooting Guide
3. JUnit Tutorial for Unit Testing
4. Java Annotations Tutorial
5. Java Interview Questions
6. Spring Interview Questions
7. Android UI Design
and many more ....
I agree to theTerms andPrivacy Policy

Thank you!

We will contact you soon.

Photo of Venkatesh NukalaVenkatesh NukalaJanuary 8th, 2022Last Updated: January 2nd, 2022
0 33,433 4 minutes read
Photo of Venkatesh Nukala

Venkatesh Nukala

Venkatesh Nukala is a Software Engineer working for Online Payments Industry Leading company. In my free time, I would love to spend time with family and write articles on technical blogs. More on JavaProgramTo.com
Subscribe
Notify of
guest
I agree to theTerms andPrivacy Policy
The comment form collects your name, email and content to allow us keep track of the comments placed on the website. Please read and accept our website Terms and Privacy Policy to post a comment.

I agree to theTerms andPrivacy Policy
The comment form collects your name, email and content to allow us keep track of the comments placed on the website. Please read and accept our website Terms and Privacy Policy to post a comment.