Iterator源码

1、简介

1.1、英文注释

An iterator over a collection. Iterator takes the place of Enumeration in the Java Collections Framework. Iterators differ from enumerations in two ways:
1、Iterators allow the caller to remove elements from the underlying collection during the iteration with well-defined semantics.
2、Method names have been improved.

1.2、中国话

Iterator是collection 的一个迭代器,它取代了Java集合 框架下的枚举接口,与枚举接口不同的是:
1、调用者可以使用迭代器并通过已经定义明确的语法对迭代中的集合进行删除操作;
2、其方法名有了一定的优化。

2、代码

2.1、所属包及类名

package java.util;
public interface Iterator {
}

2.2、类成员

2.3、类方法

boolean hasNext();

如果集合在迭代过程中还有元素,返回true,否则返回false。

E next();

在集合还有更多元素的情况下,返回迭代过程中的下一个元素。

default void remove()
    default void remove() {
        throw new UnsupportedOperationException("remove");
    }

将迭代器返回的元素删除,该方法只能执行一次。

default void forEachRemaining(Consumer action)
    default void forEachRemaining(Consumer action) {
        Objects.requireNonNull(action);
        while (hasNext())
            action.accept(next());
    }

Java8新添加的方法,其目的是将剩余的元素进行迭代操作,其参数是一个消费者接口回调函数consumer。

你可能感兴趣的:(Iterator源码)