Iterator:对 collection 进行迭代的迭代器
常用方法:
boolean hasNext()如果仍有元素可以迭代,则返回 true。(换句话说,如果 next 返回了元素而不是抛出异常,则返回 true)。
Object next()返回迭代的下一个元素。
void remove()从迭代器指向的 collection 中移除迭代器返回的最后一个元素(可选操作)。
每次调用 next 只能调用一次此方法。如果进行迭代时用调用此方法之外的其他方式修改了该迭代器所指向的 collection,则迭代器的行为是不确定的。
Iterator迭代器检索List,Set,Map集合
首先我们需要一个实体类Student类。
package maps; public class Student { private Integer sno; private String sname; private Double smark; public Student(){} public Student(Integer sno,String sname,Double smark) { this.sno=sno; this.sname=sname; this.smark=smark; } public Integer getSno() { return sno; } public void setSno(Integer sno) { this.sno = sno; } public String getSname() { return sname; } public void setSname(String sname) { this.sname = sname; } public Double getSmark() { return smark; } public void setSmark(Double smark) { this.smark = smark; } } 实例一:迭代List列表 public void IteratorList() { //创建实体类对象 Student stu1=new Student(1,"name1",60.08); Student stu2=new Student(2,"name2",70.08); Student stu3=new Student(3,"name3",80.08); Student stu4=new Student(4,"name4",90.08); //创建List列表 List list=ArrayList(); //添加元素 list.add(stu1); list.add(stu2); list.add(stu3); list.add(stu4); //获得迭代器 Iterator it=list.iterator(); //判断是否还有元素可以迭代 while(it.hasNext()) { //返回迭代的下一个元素。 Student st=(Student)it.next(); //结果输出 System.out.println(st.getSname()); } } 实例一:迭代set列表 public void IteratorSet() { //创建实体类对象 Student stu1=new Student(1,"name1",60.08); Student stu2=new Student(2,"name2",70.08); Student stu3=new Student(3,"name3",80.08); Student stu4=new Student(4,"name4",90.08); //创建List列表 Set set=HashSet(); //添加元素 set.add(stu1); set.add(stu2); set.add(stu3); set.add(stu4); //获得迭代器 Iterator it=set.iterator(); //判断是否还有元素可以迭代 while(it.hasNext()) { //返回迭代的下一个元素。 Student st=(Student)it.next(); //结果输出 System.out.println(st.getSname()); } } 实例一:迭代Map列表 public void IteratorMap() { //创建实体类对象 Student stu1=new Student(1,"name1",60.08); Student stu2=new Student(2,"name2",70.08); Student stu3=new Student(3,"name3",80.08); Student stu4=new Student(4,"name4",90.08); //创建List列表 Map map=HashMap(); //添加元素,以学号为Key,Student实例为值 map.put(stu1.getSno(), stu1); map.put(stu2.getSno(), stu2); map.put(stu3.getSno(), stu3); map.put(stu4.getSno(), stu4); //返回Map中包含的键的 Set 列表。 Set set=map.keySet(); //获得Key--Set列表迭代器 Iterator it=set.iterator(); while(it.hasNext()) { Object key=it.next(); //判断key 是否存在 if(map.containsKey(key)) { //返回迭代的元素 Student st=(Student)map.get(key); //结果输出 System.out.println(st.getSname()); } } }
相关推荐
迭代器(Iterator)接口提供了遍历集合的标准方法。它可以用于任何实现了Collection接口的类。使用迭代器的主要好处是可以安全地修改集合,因为它在遍历时不会抛出`ConcurrentModificationException`异常。 - `...
迭代器(Iterator)是一种访问集合元素的方式,它提供了一种遍历集合的方法。使用迭代器可以安全地修改集合,因为迭代器提供了`remove()`方法来删除当前元素。 - **iterator()**:返回一个迭代器。 - **hasNext()**...
迭代器(Iterator)是用来遍历集合中元素的一种方式。`Collection`接口提供了`iterator()`方法,用于获取迭代器。 ```java Iterator iterator = collection.iterator(); while (iterator.hasNext()) { Object ...
2. 使用 迭代器(Iterator): Iterator it=list.iterator(); while(it.hasNext){ System.out.println(it.next()); } Map(映射): Map 是一种键值对的集合,使用键来唯一标识值。Map 接口主要实现类包括:...
- `Iterator iterator()`:返回一个迭代器,用于遍历集合中的元素。 #### Iterator接口 `Iterator`接口是`Collection`接口中的一个方法的返回类型,它提供了一种遍历集合的方式,并且可以在遍历过程中安全地移除...
#### 五、迭代器(Iterator) 为了遍历集合中的元素,Java集合框架提供了一个名为`Iterator`的接口。这个接口定义了两个主要的方法: - `boolean hasNext()`:检查是否还有更多的元素可供迭代。 - `Object next()`...
本文将深入探讨这两个主题,特别是针对标题中提到的`Enumeration`和`Iterator`迭代器,以及各种常见的容器类,如`Collection`、`List`、`Set`、`Map`以及它们的具体实现,例如`ArrayList`、`LinkedList`、`Vector`、...
迭代器(Iterator)是Java集合框架中用于遍历集合的工具。它提供了一个通用的遍历接口,使得可以通过不同的集合类型的统一方式来访问元素。迭代器模式将集合的遍历逻辑和集合本身分离,它支持快速的失败,是一种安全...
- 遍历元素:通过Iterator迭代器或foreach循环遍历集合。 7. **泛型** - Java集合框架广泛使用泛型,允许在声明集合时指定元素类型,以增强类型安全性和编译时检查。 8. **并发处理** - Java并发库提供了...
- `Iterator iterator()`:返回可以遍历集合元素的迭代器。 - `boolean remove(Object o)`:从集合中移除指定的元素。 - `int size()`:返回集合中元素的数量。 - `Object[] toArray()`:返回包含集合中所有元素的...
- iterator():返回一个迭代器,用于遍历集合中的元素。 1.2.2 迭代器 迭代器是访问集合元素的主要方式,它提供了hasNext()和next()方法,分别用于检查是否有下一个元素和获取下一个元素。 1.3 LIST List接口...
除了这些核心的集合类和接口,Java集合框架还包括了迭代器(Iterator)接口,它允许遍历集合中的元素。迭代器提供了一个统一的遍历集合的方式,可以用来逐个访问集合中的元素,而不必关心集合的具体实现。 在Java...
通过这个方法,我们可以获取到一个包含所有键的`Set`集合,然后使用迭代器(`Iterator`)或增强型for循环(foreach)来遍历这个`Set`,从而间接地遍历整个`Map`。 #### 示例代码解析: ```java private String ...
- `iterator()`:返回一个迭代器,用于遍历集合。 1.2.2 迭代器 迭代器是Java集合框架中的一个重要组件,用于遍历并操作集合中的元素,而不会暴露集合的内部结构。迭代器提供了`hasNext()`和`next()`方法来访问集合...
Iterator接口是一个迭代器接口,用于遍历集合中的元素。Iterator接口提供了两个方法:hasNext()和next(),用于判断是否存在下一个可访问的元素和返回要访问的下一个元素。 Map接口 Map接口是一个键值对的集合,...
Java集合框架的迭代器(Iterator)模式允许遍历集合中的每个元素,而不必关心集合的内部实现。迭代器提供了前进到下一个元素的方法、检查是否还有更多元素的方法以及移除当前元素的方法。 除了以上基本类型外,Java...
迭代器(Iterator)接口提供了遍历集合的方法,通过`hasNext()`判断是否还有下一个元素,通过`next()`获取下一个元素。 ```java Iterator<String> iterator = collection.iterator(); while (iterator.hasNext()) {...
本篇文章将重点介绍Java容器类中Collection接口、Map接口、Iterator接口以及List、Set和Map的实现类。 首先,Collection接口是容器类层次结构的核心,它是单列集合的主要根接口。Collection接口的主要方法包括add...
迭代器分为五种类型:输入迭代器(Input Iterator)、输出迭代器(Output Iterator)、前向迭代器(Forward Iterator)、双向迭代器(Bidirectional Iterator)和任意存取迭代器(Random Access Iterator)。不同类型的迭代器...