package com.org.each; import java.util.ArrayList; import java.util.Iterator; import java.util.List; /** *@Author:jilongliang *@Date :2013-3-10 *@Project:JavaSE *@Class:ForEach.java *@Description: */ public class ForEach { /** * 迭代器(Iterator) * 迭代器是一种设计模式,它是一个对象,它可以遍历并选择序列中的对象, * 而开发人员不需要了解该序列的底层结构.迭代器通常被称为“轻量级”对象, * 因为创建它的代价小. * 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<String> list = new ArrayList<String>(); list.add("AA"); list.add("BB"); list.add("CC"); list.add("EE"); // 方法一 Iterator<String> it = list.iterator(); while (it.hasNext()) { System.out.println(it.next()); } // 方法二 Iterator<String> itera=list.iterator(); do{ System.out.println(itera.next()); }while(itera.hasNext()); // 方法三 for (int i = 0; i < list.size(); i++) { String str = list.get(i); System.out.println(str); } // 方法四 for (Iterator<String> iter = list.iterator(); iter.hasNext();) { String ss = iter.next(); System.out.println(ss); } // 方法五 for (String S : list) { System.out.println(S); } } }
相关推荐
在 J2SE 1.5 中,Java 引入了一种新的 for 循环语法,称为“增强的 for 循环”或“foreach 循环”,它提供了一种更简单的方式来遍历数组和 Collection 对象。 传统的 for 循环 在遍历数组时,传统的 for 循环通常...
for 循环一般用来处理比较简单的有序的,可预知大小的集合或数组。 foreach 可用于遍历任何集合或数组,而且操作简单易懂,他唯一的不好就是需要了解集合内部类型。 iterator 是最强大的,他可以随时修改或者删除...
老生常谈foreach(增强for循环)和for的区别 在 Java 编程语言中,foreach 和 for 是两种常用的循环语句,都是用于遍历数组或集合的元素。然而,foreach 和 for 之间存在一些关键的区别,了解这些区别对于编写高效的...
除了传统的Iterator迭代方式,JDK 1.5引入了增强for循环(也称foreach循环),简化了遍历集合和数组的操作。增强for循环的语法如下: ```java for (元素的数据类型 变量 : 集合或数组) { // 操作代码 } ``` 例如...
【ES6入门教程之Iterator与for...of循环详解】 在ES6中,Iterator(遍历器)是一个重要的概念,它提供了一种通用的遍历数据结构的方法,使得无论是数组、对象还是其他数据类型,都能通过相同的接口进行遍历。遍历器...
本文将详细解析如何使用`for`循环遍历`Map`的键和值。 首先,我们来看一下如何仅遍历`Map`的键。在Java中,`Map`接口提供了`keySet()`方法,返回一个包含所有键的`Set`视图。你可以通过这个`Set`来遍历键。以下是一...
迭代通常使用`for`循环实现,它会根据已知信息访问数据结构的下一元素。例如,遍历一个列表: ```python my_list = [1, 2, 3] for item in my_list: print(item) ``` 2. **可迭代对象** 可迭代对象...
这个接口的存在使得任何实现它的类都可以被用于`for-each`循环(增强for循环),这是一种简洁且易于理解的遍历集合元素的方式。例如,`Collection`、`List`和`Set`都是`Iterable`接口的实现类,因此可以使用`for-...
- **传统for循环遍历**:简单易懂,适用于任何情况,但在处理大量数据时可能会出现索引错误。 - **增强型for循环遍历**:语法简洁,易于阅读和维护,适合于仅需遍历而不修改元素的情况。 每种遍历方法都有其适用...
此外,还介绍了使用增强for循环的简便方式,虽然其内部仍然是通过迭代器实现的,但更加简洁易懂。通过掌握这两种遍历集合的方法,开发者可以在实际项目中更加灵活地处理集合数据,提高代码质量和开发效率。
总结来说,`Iterator`和`for..of`遍历是ES6中增强可迭代性的重要工具,它们使得处理复杂数据结构变得更加简单和一致。了解并熟练掌握这些概念,对于编写高效且易于维护的JavaScript代码至关重要。
### Python中的可迭代对象、迭代器、For循环工作机制、生成器 #### 一、可迭代对象与迭代器的区别 为了更好地理解Python中的可迭代对象(iterable)与迭代器(iterator),我们首先需要掌握迭代器协议的基础知识。...
当我模拟这个模型时,我能够在每个循环(10 ms 循环)中看到值“3”,并且在 FOR 子系统内有一个范围(模型中的@ Scope3)。 但是当我将此输出范围限定在 FOR 子系统之外(模型中的 @ Scope),它始终显示“0”且...
在Python编程语言中,Iterator(迭代器)和Iterable(可迭代对象)是两个非常核心的概念,它们...在Python中,for循环和许多内置函数都会在幕后使用迭代器,因此理解这两者的区别和应用对于高效地使用Python非常关键。
然而,值得注意的是,`for...of`循环在某些场景下是合理的,比如处理`Iterator`对象或实现某些特定的遍历逻辑。因此,如果确实需要使用`for...of`,可以在代码中添加注释来解释其必要性,或者通过设置ESLint配置,对...
当我们需要遍历ArrayList中的元素时,有两种主要的迭代方式:通过`Iterator`接口和使用增强型for循环(也称为foreach循环)。这两种方法都允许我们访问ArrayList中的每个元素,但它们的实现方式略有不同。 ### 1. ...
以下是一个简单的例子,模拟一个数组的`Iterator`: ```javascript let arrayLike = { 0: 'a', 1: 'b', 2: 'c', length: 3, [Symbol.iterator]: function* () { for (let i = 0; i ; i++) { yield this[i]; ...
根据给定文件的信息,本文将详细介绍如何在Java的List集合中去除重复元素的三种方法:使用for循环、使用迭代器以及利用HashSet的特性。 ### 一、使用for循环去除重复元素 这种方法的基本思想是通过双重循环来遍历...
描述简单明了,指出这个插件是专为Babel设计的,目的是使`forOf`转换(即`for...of`循环)在编译时仅适用于数组。这意味着如果尝试对非数组类型的可迭代对象使用`for...of`,该插件将会进行处理,可能抛出错误或警告...
C ++总结循环基准最初的动机是找出C ++中不同的for循环类型的开销。代码将以下代码复制并粘贴到以查看生成的汇编代码。 注意:数组或向量在基准测试中初始化。 下面的简化代码供您复制并粘贴到以便您仅阅读相关的...