我是靠谱客的博主 拼搏小土豆,最近开发中收集的这篇文章主要介绍Java中Iterable和Iterator的区别,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

java ITerable和Iterator的区别如下:
1.Iterator是迭代器类,而Iterable是接口,只要实现该接口就可以使用foreach,进行迭代.
   Iterable中封装了Iterator接口,只要实现了Iterable接口的类,就可以使用Iterator迭代器了。

2.集合Collection、List、Set都是Iterable的实现类,所以他们及其他们的子类都可以使用foreach进行迭代。

  比如:(百度一小例子)

   好多类都实现了Iterable接口,这样对象就可以调用iterator()方法。 
一般都是结合着用,比如 
HashMap类就实现了Iterable接口,而要访问或打印出Map中所有内容时,
就可以这样:
 HashMap hashMap; 
Iterator iter = hashMap.iterator(); 
while(iter.hashNext()) { 
  String s = iter.next(); 
}

3.Iterator中和核心的方法next(),hasnext(),remove(),都是依赖当前位置,如果这些集合直接实现Iterator,则必须包      括当前迭代位置的指针。当集合在方法间进行传递的时候,由于当前位置不可知,所以next()之后的值,也不可      知。    当实现Iterable则不然,每次调用都返回一个从头开始的迭代器,各个迭代器之间互不影响。

最后

以上就是拼搏小土豆为你收集整理的Java中Iterable和Iterator的区别的全部内容,希望文章能够帮你解决Java中Iterable和Iterator的区别所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(57)

评论列表共有 0 条评论

立即
投稿
返回
顶部