Перебор ArrayList в Java — for, for-each, Iterator и forEach
В этом примере показано, как пройтись по элементам ArrayList тремя разными способами: при помощи цикла for, цикла for-each и интерфейса ListIterator.
Пример 1: Итерация по ArrayList с помощью цикла for
import java.util.ArrayList;
class Main {
public static void main(String[] args) {
// Creating an array list
ArrayList<String> languages = new ArrayList<>();
languages.add("Java");
languages.add("JavaScript");
languages.add("Python");
System.out.println("ArrayList: " + languages);
// Using for loop
System.out.println("Iterating over ArrayList using for loop: ");
for(int i = 0; i < languages.size(); i++) {
System.out.print(languages.get(i));
System.out.print(", ");
}
}
}
Вывод:
ArrayList: [Java, JavaScript, Python]
Iterating over ArrayList using for loop:
Java, JavaScript, Python,
В приведённом примере мы создали ArrayList с именем languages. Здесь мы использовали цикл for для доступа к каждому элементу списка по индексу.
Пример 2: Итерация по ArrayList с помощью цикла for-each
import java.util.ArrayList;
class Main {
public static void main(String[] args) {
// Creating an array list
ArrayList<String> languages = new ArrayList<>();
languages.add("Java");
languages.add("JavaScript");
languages.add("Python");
System.out.println("ArrayList: " + languages);
// Using forEach loop
System.out.println("Iterating over ArrayList using for-each loop:");
for(String language : languages) {
System.out.print(language);
System.out.print(", ");
}
}
}
Вывод:
ArrayList: [Java, JavaScript, Python]
Iterating over ArrayList using for-each loop:
Java, JavaScript, Python,
Здесь мы использовали цикл for-each для обхода ArrayList и вывода каждого элемента.
Пример 3: Итерация по ArrayList с помощью listIterator()
import java.util.ArrayList;
import java.util.ListIterator;
class Main {
public static void main(String[] args) {
// Creating an ArrayList
ArrayList<Integer> numbers = new ArrayList<>();
numbers.add(1);
numbers.add(3);
numbers.add(2);
System.out.println("ArrayList: " + numbers);
// Creating an instance of ListIterator
ListIterator<Integer> iterate = numbers.listIterator();
System.out.println("Iterating over ArrayList:");
while(iterate.hasNext()) {
System.out.print(iterate.next() + ", ");
}
}
}
Вывод:
ArrayList: [1, 3, 2]
Iterating over ArrayList:
1, 3, 2,
В приведённом примере мы использовали метод listIterator() для обхода ArrayList. Здесь:
hasNext()— возвращаетtrue, если в списке есть следующий элемент;next()— возвращает следующий элемент списка.
Примечание
Также для обхода ArrayList можно использовать методы ArrayList.iterator() и ArrayList.forEach().