MST

星途 面试题库

面试题:Java集合框架中迭代器使用的常见场景

在Java集合框架中,迭代器(Iterator)常用于遍历集合元素。请举例说明至少两个使用迭代器的常见场景,并编写代码示例展示如何在这些场景中正确使用迭代器。
16.3万 热度难度
编程语言Java

知识考点

AI 面试

面试题答案

一键面试

场景一:遍历并删除集合元素

在遍历集合时,如果需要删除元素,使用迭代器的 remove 方法可以避免 ConcurrentModificationException

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class IteratorExample1 {
    public static void main(String[] args) {
        List<Integer> numbers = new ArrayList<>();
        numbers.add(1);
        numbers.add(2);
        numbers.add(3);
        numbers.add(4);

        Iterator<Integer> iterator = numbers.iterator();
        while (iterator.hasNext()) {
            int number = iterator.next();
            if (number % 2 == 0) {
                iterator.remove();
            }
        }
        System.out.println(numbers);
    }
}

场景二:通用的集合遍历

当需要对不同类型的集合(如 ListSet)进行统一的遍历操作时,迭代器提供了一种通用的方式。

import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;

public class IteratorExample2 {
    public static void main(String[] args) {
        Set<String> fruits = new HashSet<>();
        fruits.add("apple");
        fruits.add("banana");
        fruits.add("cherry");

        Iterator<String> iterator = fruits.iterator();
        while (iterator.hasNext()) {
            String fruit = iterator.next();
            System.out.println(fruit);
        }
    }
}