专注于 JetBrains IDEA 全家桶,永久激活,教程
持续更新 PyCharm,IDEA,WebStorm,PhpStorm,DataGrip,RubyMine,CLion,AppCode 永久激活教程

遍历集合元素

遍历集合元素

Iterator接口

Iterator:迭代器接口,它本身不是容器

  • 集合对象每次调用iterator()方法都得到一个全新的迭代器对象,默认游标都在集合的第一个元素之前

内部方法

1、 hasNext()

判断是否还有下一个元素

2、 next()

 *  指针下移
 *  将下移以后集合位置上的元素返回
 *  类似指针操作,最开始指向集合第一个元素前的那个空元素,调用一次此方法指针下移一次

3、 remove()

在遍历的时候删除集合中的元素
  • 此方法不同于集合直接调用remove()
  • 如果还未调用next()或在上一次调用next()方法之后已经调用remove方法,再调用remove()方法都会报IllegalStateException错误
Collection coll = new ArrayList();
        coll.add("Tom");
        coll.add("Jack");
        coll.add("Ann");

        Iterator iterator = coll.iterator();
        while(iterator.hasNext()){
            Object next = iterator.next();
            if(next.equals("Tom")){
                iterator.remove();
            }
        }

遍历集合

利用到Iterator中的hasNext()方法和next()方法

public void test7(){
        Collection coll = new ArrayList();
        coll.add("Tom");
        coll.add("Jack");
        coll.add("Ann");

        Iterator iterator = coll.iterator();
        while(iterator.hasNext()){
            Object next = iterator.next();
            if(next.equals("Tom")){
                iterator.remove();
            }
        }

        //需要一个全新的迭代器对象
        Iterator iterator1 = coll.iterator();
        while (iterator1.hasNext()){
            System.out.println(iterator1.next());
        }
    }

运行结果

70_1.png

foreach循环

foreach循环迭代访问Collection和数组

格式

for(集合/数组中元素的类型 局部变量 :集合/数组对象){

}

举例

for(Object obj : coll){
            System.out.println(obj);
        }

过程

  • 取coll中第n个元素赋给obj,之后打印obj
  • 内部仍然调用了迭代器

注意

增强for循环中,把coll的数据取出来付给了新的变量(obj)

所以如果想要更改数据的话,不可以在增强for循环中更改,因为coll中的数据没有改变

未经允许不得转载:搜云库技术团队 » 遍历集合元素

JetBrains 全家桶,激活、破解、教程

提供 JetBrains 全家桶激活码、注册码、破解补丁下载及详细激活教程,支持 IntelliJ IDEA、PyCharm、WebStorm 等工具的永久激活。无论是破解教程,还是最新激活码,均可免费获得,帮助开发者解决常见激活问题,确保轻松破解并快速使用 JetBrains 软件。获取免费的破解补丁和激活码,快速解决激活难题,全面覆盖 2024/2025 版本!

联系我们联系我们