This article shows you how to use a ListIterator to add elements to an ArrayList. ListIterator is used to return an iterator on a list of list items. ListIterator() returns an iterator over a list from the start, but listIterator(index) returns an iterator over a list of the specified index.
Syntax:
// listIterator() method returns an iterator over the list from the beginning ListIterator it = list.listIterator() // listIterator(index) method returns ans iterator over the list from the given index ListIterator it = list.listIterator(index);
Return Value: This method returns a list iterator for the elements in that list (in the correct order).
Approach: To add an element to ArrayList using Java ListIterator, the process divided into two parts:
1. Make an iterator.
ListIterator it = list.listIterator()
2. Add element using add() method.
it.add(element)
Below is the implementation of the above approach:
Example 1:
// Java program to add elements to ArrayList using // ListIterator import java.util.*; public class GFG { public static void main(String[] args) { // New empty ArrayList List list = new ArrayList<>(); // Add elements to ArrayList list.add(10); list.add(20); list.add(30); // Print ArrayList before add 50 System.out.println("Before add 50: " + list); // ListIterator ListIterator it = list.listIterator(); // iterate ArrayList and add 50 to ArrayList while (it.hasNext()) { // add 50 to ArrayList it.add(50); // move iterator it.next(); } // Print ArrayList after add 50 System.out.println("After add 50: " + list); } }
Output
Before add 50: [10, 20, 30] After add 50: [50, 10, 50, 20, 50, 30]
Example 2:
// Java program to add elements to ArrayList using // ListIterator import java.util.*; public class GFG { public static void main(String[] args) { // New empty ArrayList List list = new ArrayList<>(); // Add elements to ArrayList list.add(10); list.add(20); list.add(30); // Print ArrayList before add 50 System.out.println("Before add 50: " + list); // Returns an iterator over the list from the given // index ListIterator it = list.listIterator(1); // iterate ArrayList and add 50 to ArrayList while (it.hasNext()) { // add 50 to ArrayList it.add(50); // move iterator it.next(); } // Print ArrayList after add 50 System.out.println("After add 50: " + list); } }
Output
Before add 50: [10, 20, 30] After add 50: [10, 50, 20, 50, 30]