Java ArrayList listIterator() Method

📘 Premium Read: Access my best content on Medium member-only articles — deep dives into Java, Spring Boot, Microservices, backend architecture, interview preparation, career advice, and industry-standard best practices.

🎓 Top 15 Udemy Courses (80-90% Discount): My Udemy Courses - Ramesh Fadatare — All my Udemy courses are real-time and project oriented courses.

▶️ Subscribe to My YouTube Channel (176K+ subscribers): Java Guides on YouTube

▶️ For AI, ChatGPT, Web, Tech, and Generative AI, subscribe to another channel: Ramesh Fadatare on YouTube

The ArrayList.listIterator() method in Java is used to obtain a list iterator for the elements in an ArrayList. This guide will cover the method's usage, explain how it works, and provide examples to demonstrate its functionality.

Table of Contents

  1. Introduction
  2. listIterator Method Syntax
  3. Examples
    • Using listIterator()
    • Using listIterator(int index)
  4. Conclusion

Introduction

The ArrayList.listIterator() method is a member of the ArrayList class in Java. It returns a list iterator over the elements in the ArrayList in proper sequence. This method is particularly useful for traversing the list, performing operations on its elements, and iterating both forwards and backwards.

listIterator Method Syntax

There are two overloaded versions of the listIterator method:

1. listIterator()

public ListIterator<E> listIterator() 
  • Returns a list iterator over the elements in the ArrayList in proper sequence, starting at the beginning of the list.

2. listIterator(int index)

public ListIterator<E> listIterator(int index) 
  • index: The index of the first element to be returned from the list iterator.
  • Returns a list iterator over the elements in the ArrayList in proper sequence, starting at the specified position in the list.

Examples

Using listIterator()

The listIterator() method can be used to obtain a list iterator that starts at the beginning of the ArrayList.

Example

import java.util.ArrayList; import java.util.ListIterator; public class ListIteratorExample { public static void main(String[] args) { ArrayList<String> list = new ArrayList<>(); list.add("Apple"); list.add("Banana"); list.add("Orange"); // Obtain a list iterator ListIterator<String> iterator = list.listIterator(); // Iterate forwards System.out.println("Iterating forwards:"); while (iterator.hasNext()) { String element = iterator.next(); System.out.println(element); } // Iterate backwards System.out.println("Iterating backwards:"); while (iterator.hasPrevious()) { String element = iterator.previous(); System.out.println(element); } } } 

Output:

Iterating forwards: Apple Banana Orange Iterating backwards: Orange Banana Apple 

Using listIterator(int index)

The listIterator(int index) method can be used to obtain a list iterator that starts at a specified position in the ArrayList.

Example

import java.util.ArrayList; import java.util.ListIterator; public class ListIteratorWithIndexExample { public static void main(String[] args) { ArrayList<String> list = new ArrayList<>(); list.add("Apple"); list.add("Banana"); list.add("Orange"); // Obtain a list iterator starting at index 1 ListIterator<String> iterator = list.listIterator(1); // Iterate forwards from index 1 System.out.println("Iterating forwards from index 1:"); while (iterator.hasNext()) { String element = iterator.next(); System.out.println(element); } // Iterate backwards from the end of the list System.out.println("Iterating backwards:"); while (iterator.hasPrevious()) { String element = iterator.previous(); System.out.println(element); } } } 

Output:

Iterating forwards from index 1: Banana Orange Iterating backwards: Orange Banana Apple 

Conclusion

The ArrayList.listIterator() method in Java provides a way to traverse and manipulate the elements of an ArrayList using a list iterator. By understanding how to use both versions of this method, you can efficiently iterate over elements in either direction and perform operations on them in your Java applications. The listIterator method offers a flexible and powerful solution for these tasks.

Comments

Spring Boot 3 Paid Course Published for Free
on my Java Guides YouTube Channel

Subscribe to my YouTube Channel (165K+ subscribers):
Java Guides Channel

Top 10 My Udemy Courses with Huge Discount:
Udemy Courses - Ramesh Fadatare