纸上得来终觉浅,绝知此事要躬行
--陆游 问渠那得清如许,为有源头活水来 --朱熹
迭 代器是一种设计模式,它是一个对象,它可以遍历并选择序列中的对象,而开发人员不需要了解该序列的底层结构。迭代器通常被称为“轻量级”对象,因为创建它的代价小。
在Collection集合中都会实现terator,因此可以通过iterator()函数获得一个iterator对象,然后就可以利用提供的函数进行相应的输出操作。
(1)iterator()方式是Java.lang.Iterator接口,被Collection实现。使用方法iterator()要求容器返回一个iterator。
(2)第一次调用Iterator的next()方法时,它返回序列的第一个元素,之后都会获得序列中的下一个元素。
(3)使用hasNext()检查序列中是否还有元素。
(4)使用remove()将迭代器新返回的元素删除。
Java8中Iterator接口的源码:
public interface Iterator<E>{ boolean hasNext();//判断是否下一个 E next();//获取下一个 default void remove() //删除 { throw new UnsupportedOperationException("remove"); } default void forEachRemaining(Consumer<? super E> action) { Objects.requireNonNull(action); while (hasNext()) action.accept(next()); }}
简单示例:
list l = new ArrayList();l.add("aa");l.add("bb");l.add("cc");//方法一for (Iterator iter = l.iterator(); iter.hasNext();) { String str = (String)iter.next(); System.out.println(str);}//方法二Iterator iter2 = l.iterator(); while(iter2.hasNext()) { String str = (String) iter2.next(); System.out.println(str);}
版权声明:本文为博主原创文章,未经博主允许不得转载。
时间: 2024-10-28 19:23:46