概述
java中for和Iterator比较:
Iterator接口也是java集合框架的成员,但是与Collection系列,Map集合系列的集合不同。Collection系列集合,Map系列集合主要用于盛装其他对象,而Iterator则主要用于遍历(即迭代访问)Collection集合中的元素,Iterator对象也被称为迭代器。
迭代器是一种设计模式,它是一个对象,可以遍历并选择序列中的对象。
Iterator接口里定义了如下4个方法:
–boolean hasNext():如果被迭代的集合中元素没有被遍历,返回true
–object next():返回集合下一个元素
–void remove():删除集合里上一次next方法返回的元素
–void forEachRemaining
如下demo
public class IntertorDemo {
public static void main(String[] args){
//创建,添加元素的代码与前一个程序相同
Collection books = new HashSet();
books.add("12");
books.add("34");
books.add("75");
Iterator iterator = books.iterator();
while (iterator.hasNext()){
//it.next()方法返回的数据类型是object类型,需要强制转换
String book = (String)iterator.next();
System.out.println(book);
if (book.equals("34")) {
iterator.remove();
}
book="66";
}
System.out.println(books);
}
}
打印出来的结果如下:
12
34
75
[12, 75]
附加:
存储的方式有两种:顺序存储、链接存储。
对于顺序存储的的记录可以根据下标找到对应的记录,对于链接存储要找到前一个位置才能找到本记录。
#所以for循环便于访问顺序存储的记录,比如数组,迭代器更适用于链接存储的记录。
最后
以上就是积极小懒猪为你收集整理的java中Iterator和for的比较的全部内容,希望文章能够帮你解决java中Iterator和for的比较所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复