本片博文参考拭心的Java 集合框架深入理解 系列
自己学习理解的一篇博文
基于jdk1.8下研究学习。
集合类架构图
从此图上可以了解,java的集合框架包含很多东西。首先这次就由Iterable开始说起。
Iterable:指定成为迭代器对象;
Implementing this interface allows an object to be the target of the “for-each loop” statement. See For-each Loop
根据官方文档中的意思:实现了这个接口将允许一个对象进行增强for循环;
而这个接口中有一个默认的方法返回迭代器。
Iterator : 迭代器
包含以下方法:
boolean hasNext(); //是否有下一个
E next(); // 返回下一个元素
default void remove() { // 删除方法
throw new UnsupportedOperationException("remove");
}
default void forEachRemaining(Consumer<? super E> action) { // jdk1.8新增的方法
Objects.requireNonNull(action);
while (hasNext())
action.accept(next());
}
迭代器中定义了四个基本的方法,其中remove()在jdk1.8中新增了默认的方法体。
拓展:
Objects.requireNonNull()方法是一个判断参数为null的方法,null直接抛出异常。
参考资料:
https://blog.csdn.net/u011240877/article/details/52743564