Java集合Set、List、Map的遍历方法

 更新时间:2014年09月20日 17:29:12   投稿:shichen2014  
这篇文章主要介绍了Java集合Set、List、Map的遍历方法,是非常实用的遍历技巧,需要的朋友可以参考下

本文实例讲述了Java集合Set、List、Map的遍历方法,分享给大家供大家参考。

具体方法如下:

package com.shellway.javase;
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.TreeMap;

import org.junit.Test;

public class TestCollection {
  
  public static void print(Collection<? extends Object> c){
    Iterator<? extends Object> it = c.iterator();
    while (it.hasNext()) {
      Object object = (Object) it.next();
      System.out.println(object);
    }
  }
  
  @Test
  public void demo1(){
    Set<String> set = new HashSet<String>();
    set.add("AAA");
    set.add("BBB");
    set.add("CCC");
    print(set);
    
    //Set的第一种遍历方式:利用Iterator
    Iterator<String> it1 = set.iterator();
    for (String ss : set) {
      System.out.println(ss);
    }
    //Set的第一种遍历方式:利用foreach
    for (String sss : set) {
      System.out.println(sss);
    }
    
    List<String> list = new ArrayList<String>();
    list.add("DDDDD");
    list.add("EEEEE");
    list.add("FFFFF");
    print(list);
    
    //List的第一种遍历方式:因为list有顺序,利用size()和get()方法获取
    for (int i = 0; i < list.size(); i++) {
      System.out.println(list.get(i));
    }
    //List的第二种遍历方式:利用Iterator
    Iterator<String> it = list.iterator();
    while (it.hasNext()) {
      System.out.println(it.next());
    }
    //List的第三种遍历方式:利用foreach
    for (String s2 : list) {
      System.out.println(s2);
    }
    
    Map<String,String> map = new TreeMap<String, String>();
    map.put("Jerry", "10000");
    map.put("shellway", "20000");
    map.put("Kizi", "30000");
    print(map.entrySet());
    //Map的第一种遍历方式:先获得key,再获得值value
    Set<String> sett = map.keySet();
    for (String s : sett) {
      System.out.println(s+":"+map.get(s));
    }
    //Map的第二种遍历方式:获得键值对
    for (Map.Entry<String, String> entry : map.entrySet()) {
      System.out.println(entry.getKey()+" : "+entry.getValue());
    }
  }
}

这里使用泛型对集合对象进行类型安全检查和遍历。

希望本文所述对大家Java程序设计的学习有所帮助。

相关文章

  • java调用文心一言API的方法实现过程

    java调用文心一言API的方法实现过程

    Java是一种广泛使用的编程语言,用于开发各种应用程序,下面这篇文章主要给大家介绍了关于java调用文心一言API的方法实现,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2023-12-12
  • 深入解析Spring Boot 的SPI机制详情

    深入解析Spring Boot 的SPI机制详情

    这篇文章主要介绍了深入解析Spring Boot的SPI机制详情,SPI是JDK内置的一种服务提供发现机制,可以用来启用框架扩展和替换组件,主要用于框架中开发,更多相关介绍,感兴趣的小伙伴可以参考一下下面文章内容
    2022-08-08
  • Spring MVC获取查询参数及路径参数代码实例

    Spring MVC获取查询参数及路径参数代码实例

    这篇文章主要介绍了Spring MVC获取查询参数及路径参数代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-02-02
  • IntelliJ IDEA2019实现Web项目创建示例

    IntelliJ IDEA2019实现Web项目创建示例

    这篇文章主要介绍了IntelliJ IDEA2019实现Web项目创建示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-04-04
  • Mybatis Log Plugin的使用方式

    Mybatis Log Plugin的使用方式

    这篇文章主要介绍了Mybatis Log Plugin的使用方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-02-02
  • java ArrayList的深拷贝与浅拷贝问题

    java ArrayList的深拷贝与浅拷贝问题

    这篇文章主要介绍了java ArrayList的深拷贝与浅拷贝问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-05-05
  • 解读什么是构造方法?能否被重写或重载?

    解读什么是构造方法?能否被重写或重载?

    这篇文章主要介绍了什么是构造方法?能否被重写或重载问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-04-04
  • Java面向对象之内部类案例讲解

    Java面向对象之内部类案例讲解

    这篇文章主要介绍了Java面向对象之内部类案例讲解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-08-08
  • Java中try catch的使用和如何抛出异常问题

    Java中try catch的使用和如何抛出异常问题

    这篇文章主要介绍了Java中try catch的使用和如何抛出异常问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-12-12
  • Java的函数式编程详解

    Java的函数式编程详解

    用了这么久的Java8,我寻思这种话也好意思说出来吗,难道自己是PythonBoy出身就是看不懂Java的理由吗,身为一个合格的后端Boy不会还有人看不明白Java的函数式编程吧,接下来小编和大家浅聊一下Java的函数式编程,需要的朋友可以参考下
    2023-10-10

最新评论