`
mw08091020
  • 浏览: 14704 次
  • 性别: Icon_minigender_1
  • 来自: 西安
文章分类
社区版块
存档分类
最新评论

foreach循环的循环计数器

 
阅读更多

从JDK5.0之后,Java增加了foreach循环用于遍历数组、集合的每个元素。使用foeach循环遍历数组或集合时,不需要获得集合或数组的长度,也无需根据索引来访问数组元素和集合元素,foreach循环会自动遍历数组或集合的每个元素。

基本格式如下:

               for( type  variableName : array |collection)

                {

                         //variableName 自动迭代访问每个元素。。。

                }


其中,variableName 是一个形参名,foreach循环将集合或数组元素依次赋给该变量。

当使用foreach循环时,系统会将数组或集合元素的副本传给循环计数器。也就是说,foreach循环中的循环计数器并不是数组或集合的元素本身。

请看如下例子:

                 import java.util.ArrayList;
                 import java.util.List;

                 public class ForeachTest {

                 public static void main(String[] args) {
                         List<String> books = new ArrayList<String>();
                         books.add("疯狂Java讲义");
                         books.add("疯狂ajax讲义");
                         books.add("疯狂android讲义");
                         for (String book : books) {
                         book = "Effective Java";
                         System.out.println(book);
                       }
                     System.out.println(books);
                   }

               }


运行后发现,book输出的值改变了,但是再打印books集合时,发现里面的元素并没有被改变

综上:foreach循环中的循环计数器本身并不是数组或集合元素,它只是一个中间变量,临时保存了正在遍历的元素。虽然中间变量可以被赋值,但是没有意义,反而会增加出错的可能。

分享到:
评论

相关推荐

    node-red-contrib-loop-processing:Node-RED节点有助于流程循环

    反循环使用计数器变量,流程像for循环一样循环。 设置以下输入: 属性用作计数器变量初始值终值(和运算符) 增量值如果条件为真,则将流发送到下部输出端口(“真” outputLabel)。 如果为false,则将流发送到上部...

    Splitting_Strings-g99Lesson:第28和29课

    还使用ForEach循环来迭代而不使用任何计数器。 传统的for循环(计数器,条件和增量),以及不使用任何此类计数器的更优化的方法。 For(&lt;数组/列表的数据类型&gt;:&lt;要迭代的数组/列表&gt;){System.out.println...

    行政区划代码get.jmx

    本测试脚本涉及知识点: 1、BeanShell代码设置字符集 2、BeanShell代码中设置变量与获取变量 3、BeanShell代码中保存结果文件 ...9、嵌套循环中重置计数器 10、嵌套变量函数 11、查看结果树 12、调试取样器

    突破程序员基本功的16课.part2

    6.6 foreach循环的循环计数器 6.7 小结 第7课 面向对象的陷阱 7.1 instanceof运算符的陷阱 7.2 构造器的陷阱 7.2.1 构造器之前的void 7.2.2 构造器创建对象吗 7.2.3 无限递归的构造器 7.3 持有当前类的实例...

    Perl5语言全教程

    4、针对列表(数组)每个元素的foreach循环 5、do循环 6、循环控制 7、传统的goto语句 三、单行条件 第八章 子程序 一、定义 二、调用 1、用&调用 2、先定义后调用 3、前向引用 4、用do调用 三、返回值 四...

    IronSnippets:在Ironhack WebDev训练营期间发现了一些有用的摘要

    带计数器的“ for”循环 4arr “ for”遍历数组 4循环 二维数组的“ for”循环 数组方法 缩写 描述 地图 array.map方法 减少 array.reduce方法 过滤器 array.filter方法 arr4e array.forEach方法 Sortu array....

    JSP实例编程100例

    13 、 &lt;c:forEach&gt; 循环 14、&lt;c:forEach&gt; varStatus 的四种属性 15、&lt;c:forEach&gt; 的用法 16、从客户端传送数据至服务端 17、使用Unicode转义字符 18、使用朝鲜语字符集 19、JSP中最简单的国际化程序 20、错误检测 21...

    JAP编程学习100例

    13 、 &lt;c:forEach&gt; 循环 14、&lt;c:forEach&gt; varStatus 的四种属性 15、&lt;c:forEach&gt; 的用法 16、从客户端传送数据至服务端 17、使用Unicode转义字符 18、使用朝鲜语字符集 19、JSP中最简单的国际化程序 20、错误检测 21...

    Java开发实战1200例(第1卷).(清华出版.李钟尉.陈丹丹).part3

    实例038 foreach循环优于for循环 47 实例039 终止循环体 48 实例040 循环体的过滤器 49 实例041 循环的极限 50 第3章 数组与集合的应用 51 3.1 数组演练 52 实例042 获取一维数组最小值 52 实例043 将二维数组中的...

Global site tag (gtag.js) - Google Analytics