iterator使用
来源:互联网 发布:公司网络配置方案 编辑:程序博客网 时间:2024/06/03 18:47
迭代器(Iterator)
迭代器是一种设计模式,它是一个对象,它可以遍历并选择序列中的对象,而开发人员不需要了解该序列的底层结构。迭代器通常被称为“轻量级”对象,因为创建它的代价小。
Iterator是一个接口,利用迭代器主要是获取元素,很少删除元素。有三个方法:
1)hasNext():判断是否有更多的元素,如果有返回true。
2)next():在hasNest()的判断下,如果有更多的元素,就返回下一个元素。
3)Remove() 删除所返回的上一个元素。(可选操作)至少要返回一次才能删除元素。也就是说如果上一个元素都没有,那么怎么能删除呢?那不是要出现异常了吗?
具体操作:
1)定义一个Iterator类型的变量it,在集合框架当中Collection提供了一个方法iterator(),可以返回一个迭代器。只要是间接继承或者直接继承Collection的都有这个方法。所以可以用ArrayList的一个对象al去返回一个迭代器。
Java中的Iterator功能比较简单,并且只能单向移动:
(1) 使用方法iterator()要求容器返回一个Iterator。第一次调用Iterator的next()方法时,它返回序列的第一个元素。注意:iterator()方法是java.lang.Iterable接口,被Collection继承。
(2) 使用next()获得序列中的下一个元素。
(3) 使用hasNext()检查序列中是否还有元素.
(4) 使用remove()将迭代器新返回的元素删除。
Iterator是Java迭代器最简单的实现,为List设计的ListIterator具有更多的功能,它可以从两个方向遍历List,也可以从List中插入和删除元素。
public static void main(String[] args) {
List list = new ArrayList();
list.add("a");
list.add("b");
list.add("c");
list.add("d");
list.add("e");
Iterator it = list.iterator();//迭代器,一般在集合里面的东西,都用这个来读取数据
while (it.hasNext()) {
System.out.println(it.next());
}
}
}
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
Iterator 用在JSP页面 是 接收参数然后循环输出的
在类里面也是我2了
举个类的例子
hasNext()判断还有没有;next()选择下一个!
import java.util.*;
public class Test {
public static void main(String[] args){
List l = Arrays.asList("one two three four five six seven".split(" "));
Iterator it = l.iterator();
while(it.hasNext())
System.out.println(it.next());
}
}
输出
one
two
three
four
five
six
seven
- iterator使用
- iterator 的使用
- iterator的使用
- vector iterator 的使用
- iterator标签的使用
- iostream iterator使用
- 使用Iterator遍历hashmap
- <s:iterator使用一
- Iterator使用实例
- iostream iterator的使用
- java使用iterator
- struts2 iterator标签使用
- Iterator的使用
- iterator 的使用
- vector迭代器iterator使用
- iterator标签的使用
- s:iterator使用实例
- iterator迭代器的使用
- 单链表的逆序
- 微信小程序登录获取用户信息
- ios中 -fobjc-arc 和 -fno-objc-arc 的使用
- 【转】圆形缓冲区(循环buffer)实现
- 广度优先搜索练习之神奇的电梯
- iterator使用
- redis.conf
- 1032. Sharing (25)
- 一种基于HBase韵海量图片存储技术
- 设计原则 —— 针对接口编程而不针对实现编程
- MVP 概念及实现demo
- 1121: 电梯
- 微服务架构的两大解耦利器与最佳实践
- C3P0连接池的配置与使用