核心代码:
package cn.ithelei.com;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
/**
*
* @Package cn.ithelei.com
* @ClassName: IteratorDemo
* @Description: TODO(Iterator<E> iterator())
* @author Administrator
* @date 2018-4-5 下午1:25:14
* @version 1.0
*/
public class IteratorDemo {
/**
* @Title: main
* @Description: Iterator迭代器;集合的专用遍历方式
* @param args
* void
* @author Administrator
* @date 2018-4-5 下午1:24:55
*/
// Object next():获取元素;并移动到下一个位置
// java.util.NoSuchElementException没有这样的元素异常;因为已经找到最后
// boolean hasNext()
public static void main(String[] args) {
// TODO Auto-generated method stub
// 创建集合对象
Collection c = new ArrayList();
// 创建并添加元素
String string = "hello";
c.add(string);
c.add("world");
c.add("www.ithelei.com");
Iterator it = c.iterator();// c调用//如果一个 方法返回值是接口;实际返回肯定子类对象(多态)
// Object object=it.next();
// System.out.println(object);
// System.out.println(it.next());
// System.out.println(it.next());
// System.out.println(it.next());
// System.out.println(it.next());
// 最后一个不应该写;所以了我们应该在每次获取前;判断;判断是否有下一个元素;有就获取;没有不管
while (it.hasNext()) {
String object = (String) it.next();
System.out.println(object);
}
//for循环改写;效率高
for(Iterator it = c.iterator();it.hasNext();){
String object = (String) it.next();
System.out.println(object);
}
}
}
总结:不要多次使用it.next方法;因为每次使用都是访问一个对象
- 邮箱:ithelei@sina.cn
- 技术讨论群:687856230
- GoodLuck
网友评论