for-each循环使用iterator进行遍历

简介: for-each循环使用iterator进行遍历

示例如下:

public static void main(String args[])
    {
        List list = new LinkedList();
        list.add("aa");
        list.add("bb");
        for(String item:list)
        {
            if("bb".equals(item))
                list.add("cc");
        }
    }

我们看一下上面例子的 反编译代码:

public static void main(String args[])
    {
        List list = new LinkedList();
        list.add("aa");
        list.add("bb");
        for(Iterator iterator = list.iterator(); iterator.hasNext();)
        {
            String item = (String)iterator.next();
            if("bb".equals(item))
                list.add("cc");
        }
    }

 

for循环中使用iterator遍历,在循环中获取元素的时候,可以直接迭代出,而使用get则会遍历一遍获取对应的元素。

使用第二种方法遍历更快。

使用第二种方法的好处是可以在遍历的时候可以删除集合中的元素,如果在for循环中,是不能删除元素的。

 

标签: java

目录
相关文章
|
7月前
|
C++ 容器
【c++】优先级队列|反向迭代器(vector|list)
【c++】优先级队列|反向迭代器(vector|list)
50 0
|
8月前
|
开发者
迭代器(Iterator)遍历的两种方法(for和while)
迭代器(Iterator)遍历的两种方法(for和while)
|
8月前
|
C#
C# 循环遍历使用
C# 循环遍历使用
164 0
C#中For循环和Foreach循环的区别
C#中For循环和Foreach循环的区别
137 0
|
8月前
各种遍历方法以及注意点
各种遍历方法以及注意点
55 0
|
Java
ArrayList 循环遍历并删除元素的常见陷阱
ArrayList 循环遍历并删除元素的常见陷阱
114 0
迭代器遍历元素并给集合中添加元素时报ConcurrentModificationException
迭代器遍历元素并给集合中添加元素时报ConcurrentModificationException
116 0
|
自然语言处理 Java
遍历list时删除元素发生了什么?
遍历list时删除元素发生了什么?
122 0
ArrayList 三种遍历方法(for循环+下标、foreach、使用迭代器)
ArrayList 三种遍历方法(for循环+下标、foreach、使用迭代器)
|
JavaScript 索引
简单理解遍历器Iterator
简单理解遍历器Iterator
116 0