`
Dollyn
  • 浏览: 168615 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

关于Java中的迭代器

阅读更多

public interface Iterator<E>

对集合进行迭代的迭代器。迭代器代替了 Java Collections Framework 中的 Enumeration 。迭代器与枚举有两点不同:

  • 迭代器允许调用方利用定义良好的语义在迭代期间从迭代器所指向的集合移除元素。

  • 方法名称得到了改进。

下面的写法:

List <String> sl=new ArrayList<String>();

sl.add("aa");

sl.add("bb");

sl.add("cc");

sl.add("dd");

for(String s : sl){

System.out.println(s);

sl.remove(s);

}
 


在运行的过程中,会抛出 java.util.ConcurrentModificationException ,也就是说,在迭代的过程中,是不允许删除 Collaction 中的元素的。


要在迭代的过程中,删除某些元素,则必须按照下面的写法:


for(Iterator it=sl.iterator();it.hasNext();){

    System.out.println(it.next());

    it.remove();

}
 
分享到:
评论

相关推荐

    java迭代器模式实现正反向遍历

    在Java编程语言中,迭代器模式(Iterator Pattern)是一种常用的设计模式,用于顺序访问集合对象中的元素,而无需暴露其底层表示。这种模式提供了一种方法来访问一个聚合对象的元素,而无需暴露该对象的内部结构。在...

    java 迭代及迭代器的小例子

    在Java编程语言中,迭代是遍历集合对象(如数组、列表或集合)的重要机制,而迭代器(Iterator)则是实现这一机制的关键工具。这里,我们通过一个小例子来深入理解Java中的迭代和迭代器。 首先,我们需要了解什么是...

    7.java迭代器接口.zip

    7.java迭代器接口.zip7.java迭代器接口.zip7.java迭代器接口.zip7.java迭代器接口.zip7.java迭代器接口.zip7.java迭代器接口.zip7.java迭代器接口.zip7.java迭代器接口.zip7.java迭代器接口.zip7.java迭代器接口.zip...

    java Iterator迭代器的使用

    迭代器的主要方法包括`hasNext()`(检查集合中是否存在下一个元素)、`next()`(返回当前元素并移动到下一个)和`remove()`(删除当前元素)。 2. **获取迭代器** 要使用`Iterator`,首先需要通过调用集合类的`...

    迭代器模式.rar之java设计模式

    在Java中,迭代器模式是通过接口和实现类来实现的,让我们深入探讨一下这个模式。 首先,我们要理解迭代器模式的核心概念。在软件工程中,迭代器模式允许我们遍历一个集合对象的所有元素,而无需暴露集合的内部结构...

    java迭代器模式.rar

    迭代这个名词对于熟悉Java的人来说绝对不陌生。我们常常使用JDK提供的迭代接口进行java collection的遍历: Iterator it = list.iterator(); while(it.hasNext()){ ...而这就是关于迭代器模式应用很好的例子。

    【Java设计模式】(1)迭代器模式Iterator

    迭代器模式(Iterator Pattern)是Java设计模式中的行为模式之一,它提供了一种方法来顺序访问聚合对象的元素,而又不暴露其底层表示。在Java中,迭代器模式被广泛应用于集合类,如ArrayList、LinkedList等,通过...

    Java试题-4:迭代器的应用

    Java试题-4:迭代器的应用 查询修改集合可以用集合自身的方法来实现 也可以用迭代器来实现 区别在于用迭代器对集合的修改操作更加安全

    设计模式--迭代器模式java例子

    在Java中,迭代器模式广泛应用于集合框架,如ArrayList、LinkedList等。本示例将深入探讨如何在Java中实现和使用迭代器模式。 首先,我们需要理解迭代器模式中的几个关键角色: 1. **聚合类(Aggregate)**:它...

    Java学习之Iterator(迭代器)的一般用法

    在深入探讨Java中Iterator(迭代器)的一般用法之前,我们先来理解一下迭代器在编程中的核心价值。迭代器是一种设计模式,其主要作用在于遍历集合中的元素,而无需开发者知晓集合的具体实现细节。这使得代码更加灵活、...

    迭代器模式java实现

    以下是一个简单的Java迭代器模式实现的例子: ```java // 定义一个聚合类,例如一个简单的数组列表 class Aggregate { private List&lt;String&gt; elements = new ArrayList(); public void add(String element) { ...

    基于列表实现的元素迭代器算法(java算法源码)

    //检查迭代器中是否还有剩余的元素 public boolean hasNext() { return (null != nextPosition); } //返回迭代器中的下一元素 public Object getNext() throws ExceptionNoSuchElement { if (!hasNext()) throw...

    java专题-迭代器

    在Java中,迭代器模式被广泛运用,尤其是在处理各种集合如`List`、`Set`、`Map`等时,通过迭代器可以更高效、更安全地遍历集合中的每个元素。本文将详细探讨迭代器模式的原理、结构以及在Java中的具体实现。 #### ...

    java体系结构之迭代器模式.rar

    在Java中,迭代器模式广泛应用于集合框架,如List、Set和Map接口,使得程序员可以方便地遍历集合中的元素。 在Java中,`java.util.Iterator`接口是迭代器模式的核心,它提供了`hasNext()`和`next()`两个方法。`...

    java的List集合和列表迭代器的使用

    java的List集合和列表迭代器的使用,简单的操作,里面附代码,简单易懂。 使用typora可以打开,其他打开会有格式问题,

    java 中迭代器的使用方法详解

    java 中迭代器的使用方法详解 一、迭代器模式概述 迭代器模式是一种常用的设计模式,它将一个集合对象封装起来,提供了一种遍历其内部元素的方式。迭代器模式有两个主要优点:一是提供给用户一个遍历的方式,而...

    关于List集合特有的迭代器的反向遍历

    Listiterator迭代器的方向遍历,在反向遍历时 源码中 index中的初值需要在定义的时候传入size集合长度 或者通过正向遍历,将nextIndex的值变为集合的长度 然后public boolean hasPrevious() { return nextIndex &gt; 0...

    迭代器模式代码示例

    在Java、C#等面向对象语言中,迭代器模式被广泛应用于容器类,如ArrayList、LinkedList等,使得我们可以遍历集合中的每一个元素。 迭代器模式包含以下主要角色: 1. **迭代器接口(Iterator)**:定义了遍历集合...

    JAVA迭代器模式.pptx

    标题和描述均提到了“JAVA迭代器模式”,这是一个在软件工程和面向对象编程中非常重要的设计模式,尤其在Java语言中被广泛运用。迭代器模式属于行为型模式,它的核心在于提供了一种方法来访问一个聚合对象中各个元素...

    java常用设计模式-迭代器模式

    在 Java 中,迭代器模式广泛应用于各种框架和库中,例如 Java Collections Framework、Java Stream API 等。这些框架和库都提供了迭代器模式的实现,以便于开发者更方便地遍历集合对象。 迭代器模式的优点还在于,...

Global site tag (gtag.js) - Google Analytics