概述
1. Iterator接口
迭代器(Iterator)主要用来操作java中的集合对象(Collection),迭代器提供了统一的语法进行集合对象(Collection)遍历操作,
无需关心集合对象内部的实现方式,java提供了一个迭代器接口Iterator,Iterator只能向前移,无法后退;
Iterator迭代器接口声明如下:
public interface Iterator<E> {
boolean hasNext();
E next();
void remove();
}
从上面的接口可以看到Iterator迭代器接口只提供了三个无参数的方法:
hasNext --判断是否还有下一个对象,如果有,则返回true,否则false
next --返回集合的下个值,此方法只能在hasNext方法返回true时调用
remove --删除集合的当前值,此方法也只能在hasNext方法返回true时调用
2. Iterable接口
jdk1.5之后新增了Iterable接口用于支持foreach循环,Iterable接口只有一个方法,就是iterator()方法,返回集合的Iterator对象,
所有实现Iterable接口的对象都可以实现foreach循环操作;
Iterator的源码如下:
public interface Iterable<T> {
Iterator<T> iterator();
}
3.Iterable和Iterator的区别
从上面的介绍可以看到Iterator提供了一种统一遍历集合元素的方式,使用Iterator对象可以不用关心具体的集合对象的具体类型和内部实现,统一使用Iterator对象方法就可以实现;
Iterable接口是为了foreach循环设计的,Iterable接口表示可以返回Iterator对象,最终还是使用Iterator遍历;
最后
以上就是缥缈紫菜为你收集整理的Java--Iterator接口和Iterable接口详解的全部内容,希望文章能够帮你解决Java--Iterator接口和Iterable接口详解所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复