迭代器

迭代器是一个访问集合的方法

如何新建一个迭代器?
Iterator<String> it=list.iterator();
it是迭代器的名称
list是你自己建立的一个集合,你建立的迭代器it就是来操作list集合的

迭代器的一些操作

hasNext()如果仍有元素可以迭代,则返回 true。
next()返回迭代的下一个元素。
void remove()将迭代器返回的元素删除

迭代器进行迭代,并且输出:

ArrayList <String>list= new ArrayList();
	list.add("12345");
	list.add("asd");
	list.add(0, "qwerwerw");
	//注意!list集合里的元素顺序为:qwerwerw 12345 asd
	Iterator<String> it=list.iterator();
	System.out.println(it.next());
	System.out.println(it.next());
	System.out.println(it.next());

输出结果
qwerwerw
12345
asd
删除:
如何删除list里第二个元素?

ArrayList <String>list= new ArrayList();
	list.add("12345");
	list.add("asd");
	list.add(0, "qwerwerw");
	//注意!list集合里的元素顺序为:qwerwerw 12345 asd
	Iterator<String> it=list.iterator();
	for(int i=0;i<2;i++) {
		it.next();
	}
	it.remove();
	System.out.println(list);

输出结果:
[qwerwerw, asd]

使用hasNext()判断是否还有元素?

ArrayList <String>list= new ArrayList();
	list.add("12345");
	list.add("asd");
	list.add(0, "qwerwerw");
	//注意!list集合里的元素顺序为:qwerwerw 12345 asd
	Iterator<String> it=list.iterator();
	for(int i=0;i<2;i++) {
		it.next();
	}
	//在经过for循环后,迭代器已经到了第2个元素(第二个元素下标为1),后面还有一个元素
	System.out.println(it.hasNext());
	it.next();//再迭代一次,此时已经到了第三元素这里,后面没有元素了
	System.out.println(it.hasNext());

输出结果:
true
false
本人水平有限,如有错误还请及时指正,谢谢。

posted @ 2022-05-01 18:12  01-cheng  阅读(38)  评论(0)    收藏  举报