黑马程序员技术交流社区
标题:
关于迭代器的理解,写代码的时候容易记忆
[打印本页]
作者:
王会涛
时间:
2014-11-9 21:54
标题:
关于迭代器的理解,写代码的时候容易记忆
接口型引用只能指向自己的子类对象,而这个对象不是被new出来的,而是通过集合的方法获取出来的;
ArrayList newAl = new ArrayList();
Iterator it = al.iterator();//通过方法获取迭代器(相当于取元素的工具)
while(it.hasNext())
{
Object obj=it.next();
//对集合元素的操作
}
迭代器是定义在集合内部的一个工具,通过它,可以遍历集合的元素,当然集合的数据结构不同,取出的动作也不同;
作者:
田峻菘
时间:
2014-11-9 22:43
迭代器就是从集合中取出元素的方式,理解为遍历ji集合。
使用迭代器取出集合中存储元素的三个步骤:
1,调用集合方法iterator()获取迭代器接口的实现类对象。
2,调用接口Iterator方法hasNext()判断集合中有没有下一个元素。
3,调用接口Iterator方法next()获取集合中的元素。
例:
//创建集合对象ArrayList
Collection con = new ArrayList();
con.add("abc8");
con.add("ABC1");
con.add("abc3");
con.add("ABC6");
//使用迭代器获取集合中的元素
//集合的方法iterator获取迭代器接口的实现类对象
Iterator it = con.iterator();
//使用接口方法hasNext()判断,集合中有没有下一个可以被取出的对象
//System.out.println(it.hasNext());
//使用接口方法next()获取集合中的元素,返回值是Object类型
while(it.hasNext()){
Object o = it.next();
System.out.println(o);
}
复制代码
或者用foreach增强for循环遍历集合
for (Object o : con) {
System.out.println(o);
}
复制代码
作者:
王会涛
时间:
2014-11-10 09:09
理解很好!
作者:
M_______r
时间:
2014-11-10 12:26
就是很简单的 while循环 hasNext(); 判断有无下一元素没有跳出, it.next();取出元素
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2