Java使用Iterator迭代器遍历集合数据的方法小结

 更新时间:2019年11月19日 09:31:00   作者:xuehyunyu  
这篇文章主要介绍了Java使用Iterator迭代器遍历集合数据的方法,结合实例形式分析了java迭代器进行集合数据遍历的常见操作技巧,需要的朋友可以参考下

本文实例讲述了Java使用Iterator迭代器遍历集合数据的方法。分享给大家供大家参考,具体如下:

1、使用迭代器遍历ArrayList集合

package com.jredu.oopch07;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class Ch05 {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        List list = new ArrayList<>();
        //集合
        list.add(1);
        list.add(2);
        list.add(3);
        //Iterator迭代器
        //1、获取迭代器
        Iterator iter = list.iterator();
        //2、通过循环迭代
        //hasNext():判断是否存在下一个元素
        while(iter.hasNext()){
            //如果存在,则调用next实现迭代
            //Object-->Integer-->int
            int j=(int)iter.next(); //把Object型强转成int型
            System.out.println(j);
        }
    }
}

2、使用迭代器遍历Set集合

package com.jredu.oopch08;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;
public class Ch01 {
    public static void main(String[] args) {
        //存储数据的地址
        Set set = new HashSet<>();
        //存储数据
        set.add(new Theme(1,"标题1","简介1"));
        set.add(new Theme(2,"标题2","简介1"));
        //遍历数据
        Iterator iter = set.iterator();
        while(iter.hasNext()){
            Theme theme = (Theme)iter.next();
            System.out.println(theme.getId()+theme.getTitle()+theme.getRemark());
        }
    }
}

3、使用迭代器遍历Map集合

package com.jredu.oopch08;
import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
public class Ch03 {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Map map = new HashMap<>();
        map.put(1, "a");
        map.put(2, "b");
        map.put(3, "c");
        //所有键值对中的键,组成一个集合
        Set set = map.keySet();
        Iterator iter = set.iterator();
        while(iter.hasNext()){
            System.out.println(iter.next());//打印出map中的键(1,2,3)
        }
        //打印出值
        //values所有的值组成的一个集合
        Collection col = map.values();
        //重写了toString方法
        System.out.println(col);//打印出a,b,c的值
    }
}

package com.jredu.oopch08;
import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
public class Ch04 {
    public static void main(String[] args) {
        Map map=new HashMap<>();
        map.put(1, "a");
        map.put(2, "b");
        map.put(3, "c");
        //必须掌握
        //所有键值对中的键,组成成一个set集合
        Set set=map.keySet();
        System.out.println(set);
        //values所有的值组成的一个集合
        Collection col=map.values();
        System.out.println(col);
        //获取所有的键和值
        //entrySet可以得到由所有键值对组成的集合
        //里边存储的是所有的数据(键-值)
        Set<Map.Entry<Integer, String>> entrySet=map.entrySet();
        Iterator<Map.Entry<Integer, String>> iter=entrySet.iterator();
        while(iter.hasNext()) {
            Map.Entry<Integer, String> entry=iter.next();
            System.out.println("键:"+entry.getKey());
            System.out.println("值:"+entry.getValue());
        }
//        Iterator iter=col.iterator();
//        while(iter.hasNext()) {
//            System.out.println(iter.next());
//        }
//        Iterator iter=set.iterator();
//        while(iter.hasNext()) {
//            System.out.println(iter.next());
//        }
//        System.out.println(map);
    }
}

更多java相关内容感兴趣的读者可查看本站专题:《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》、《Java文件与目录操作技巧汇总》和《Java缓存操作技巧汇总

希望本文所述对大家java程序设计有所帮助。

相关文章

  • IntelliJ IDEA 2023.1.4 无法刷新Maven项目模块的问题及解决方法

    IntelliJ IDEA 2023.1.4 无法刷新Maven项目模块的问题及解决方法

    这篇文章主要介绍了如何排查 IDEA 自身报错问题,本文以IntelliJ IDEA 2023.1.4无法刷新项目Maven模块的问题为例,给大家详细讲解,需要的朋友可以参考下
    2023-08-08
  • Java 关于String字符串原理上的问题

    Java 关于String字符串原理上的问题

    字符串广泛应用 在 Java 编程中,在 Java 中字符串属于对象,Java 提供了 String 类来创建和操作字符串,让我们一起来了解它
    2022-04-04
  • java:无法访问org.springframework.boot.SpringApplication的解决方法

    java:无法访问org.springframework.boot.SpringApplication的解决方法

    这篇文章主要给大家介绍了关于java:无法访问org.springframework.boot.SpringApplication的解决方法,文中通过实例代码将解决的办法介绍的非常详细,需要的朋友可以参考下
    2023-01-01
  • springboot实现自动邮件发送任务详解

    springboot实现自动邮件发送任务详解

    这篇文章主要介绍了Springboot中的邮件任务,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2022-04-04
  • 如何解决Mybatis--java.lang.IllegalArgumentException: Result Maps collection already contains value for X

    如何解决Mybatis--java.lang.IllegalArgumentException: Result Maps

    这两天因为项目需要整合spring、struts2、mybatis三大框架,但启动的时候总出现这个错误,困扰我好久,折腾了好久终于找到问题根源,下面小编给大家分享下问题所在及解决办法,一起看看吧
    2016-12-12
  • 带你入门Java的数组

    带你入门Java的数组

    这篇文章主要给大家介绍了关于Java中数组的定义和使用的相关资料,,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-07-07
  • springboot中如何使用自定义两级缓存

    springboot中如何使用自定义两级缓存

    本话题主要就是讨论如何在springboot的基础上,无缝集成ehcache和redis作为一二级缓存,并且实现缓存同步。
    2021-05-05
  • SpringBoot事件机制相关知识点汇总

    SpringBoot事件机制相关知识点汇总

    这篇文章主要介绍了SpringBoot事件机制相关知识点汇总,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-09-09
  • Java项目Guava包 HashMultimap使用及注意事项

    Java项目Guava包 HashMultimap使用及注意事项

    guava基本上可以说是java开发项目中,大概率会引入的包,今天介绍的主角是一个特殊的容器HashMultmap,可以简单的将它的数据结构理解为Map<K, Set<V>>,今天主要介绍下基础的知识点 HashMultmap级使用,感兴趣的朋友一起看看吧
    2022-05-05
  • Java 异常机制Exception和自定义异常

    Java 异常机制Exception和自定义异常

    这篇文章主要介绍了Java 异常机制Exception+自定义异常,异常分三种检查性异常、运行时异常、错误ERROR,下文对其更多详细介绍,需要的小伙伴可以参考一下
    2022-05-05

最新评论