java中遍历Map的常用方法总结

public static void main(String[] args) {
 
Map<String, String> map = new HashMap<String, String>();
map.put("1", "value1");
map.put("2", "value2");
map.put("3", "value3");
 
//第一种:普遍使用,二次取值
System.out.println("通过Map.keySet遍历key和value:");
for (String key : map.keySet()) {
 System.out.println("key= "+ key + " and value= " + map.get(key));
}
 
//第二种
System.out.println("通过Map.entrySet使用iterator遍历key和value:");
Iterator<Map.Entry<String, String>> it = map.entrySet().iterator();
while (it.hasNext()) {
 Map.Entry<String, String> entry = it.next();
 System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue());
}
 
//第三种:推荐,尤其是容量大时
System.out.println("通过Map.entrySet遍历key和value");
for (Map.Entry<String, String> entry : map.entrySet()) {
 System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue());
}
 
//第四种
System.out.println("通过Map.values()遍历所有的value,但不能遍历key");
for (String v : map.values()) {
 System.out.println("value= " + v);
}
 }

第一种:

最常规的一种遍历方法,最常规就是最常用的,虽然不复杂,但很重要,这是我们最熟悉的。
 
 

import java.util.Collection; 
import java.util.Iterator; 
import java.util.Map; 
import java.util.HashMap; 
 
    /**
     * 1.把值放到一个集合里,然后遍历集合
     */ 
public class TraversalMap1 { 
    private static Map<Integer, String> map; 
    private static TraversalMap1 getMap(){ 
        map = new HashMap<Integer, String>(); 
        for(int i = 0 ; i < 10 ; i ++){ 
            if(map.isEmpty()) map.put(i, "String " + i); 
            else if(map.get(i) == null) map.put(i,"String " + i) ; 
        } 
        return null; 
    } 
     
    public static void main(String[] args){ 
        getMap(); 
        Collection<String> c = map.values(); 
        Iterator i = c.iterator(); 
        for(; i.hasNext() ;){ 
            System.out.println(i.next());//遍历出map内的所有value 
        } 
         
    }    

 
 
第二种:

利用keyset进行遍历,它手优点在于可以根据你所想要的key值得到你想要的values,更具灵活性。
 

import java.util.Set; 
import java.util.Iterator; 
import java.util.Map; 
import java.util.HashMap; 
    /**
    * 2.把key放到一个集合里,遍历key值同时根据key得到值
    */ 
public class TraversalMap2 { 
    private static Map<Integer, String> map; 
    private static TraversalMap2 getMap(){ 
        map = new HashMap<Integer, String>(); 
        for(int i = 0 ; i < 10 ; i ++){ 
            if(map.isEmpty()) map.put(i, "String " + i); 
            else if(map.get(i) == null) map.put(i,"String " + i) ; 
        } 
        return null; 
    } 
     
    public static void main(String[] args){ 
        getMap(); 
        Set set = map.keySet(); 
        Iterator i = set.iterator(); 
        for(; i.hasNext() ;){ 
            System.out.println(i.next());//遍历出map内的所有key 
        } 
         
    }    

 
第三种:

比较复杂的一种遍历在这里,呵呵~~它很暴力哦,它的灵活性太强了,想得到什么就能得到什么~~
 

import java.util.Map; 
import java.util.HashMap; 
    /**
    * 3.把一个map对象放到放到entry里,然后根据entry同时得到key和value
    */ 
public class TraversalMap3 { 
    private static Map<Integer, String> map; 
    private static int num = 0 ; 
    private static String str = ""; 
    private static TraversalMap3 getMap(){ 
        map = new HashMap<Integer, String>(); 
        for(int i = 0 ; i < 10 ; i ++){ 
            if(map.isEmpty()) map.put(i, "String " + i); 
            else if(map.get(i) == null) map.put(i,"String " + i) ; 
        } 
        return null; 
    } 
     
    public static void main(String[] args){ 
        getMap(); 
        for(Map.Entry<Integer, String> entry : map.entrySet()){ 
            num = entry.getKey(); 
            str = entry.getValue(); 
            System.out.println("the map key is : " + num + " || the value is : " + str);//显示出map的key和value 
        } 
         
    }    

时间: 2024-12-28 14:49:21

java中遍历Map的常用方法总结的相关文章

JAVA中关于Map的九大问题

通常来说,Map是一个由键值对组成的数据结构,且在集合中每个键是唯一的.下面就以K和V来代表键和值,来说明一下java中关于Map的九大问题. 0.将Map转换为List类型 在java中Map接口提供了三种集合获取方式:Key set,,value set, and key-value set..它们都可以通过构造方法或者addAll()方法来转换为List类型.下面代码就说明了如何从Map中构造ArrayList: // key list List keyList = new ArrayLi

java实现遍历Map的方法_java

本文实例讲述了java实现遍历Map的方法.分享给大家供大家参考.具体如下: package com.yenange.test3; import java.util.HashMap; import java.util.Iterator; import java.util.Map; public class TestMap { public static void main(String[] args) { Map map=new HashMap(); map.put(1, 1); map.put

java中关于Map的几大问题总结

通常来说, Map 是一个由键值对组成的数据结构,且在集合中每个键是唯一的.下面就以 K 和 V 来代表键和值,来说明一下 java 中关于 Map 的九大问题. 0 .将 Map 转换为 List 类型 在 java 中 Map 接口提供了三种集合获取方式: Key set, , value set , and key-value set. .它们都可以通过构造方法或者 addAll() 方法来转换为 List 类型.下面代码就说明了如何从 Map 中构造 ArrayList : // key

java频繁连接、调用oracle数据库的某存储过程,且存储过程返回游标在JAVA中遍历,使用什么连接,或什么方式效率比较好??

问题描述 java频繁连接.调用oracle数据库的某存储过程,且存储过程返回游标在JAVA中遍历,使用什么连接,或什么方式效率比较好??

js中遍历Map对象的简单实例_javascript技巧

实例如下: console.log(jsonData);//火狐控制台打印输出: Object { fileNumber="文件编号", fileName="文件名称"} for(var key in jsonData) console.log("属性:" + key + ",值:"+ jsonData[key]); } 打印输出: 属性:fileNumber, 值:文件编号 属性:fileName, 值:文件名称 以上这篇j

js中遍历Map对象的方法_javascript技巧

js中遍历Map对象的方法 console.log(jsonData);//火狐控制台打印输出: Object { fileNumber="文件编号", fileName="文件名称"} for(var key in jsonData) console.log("属性:" + key + ",值:"+ jsonData[key]); } 打印输出: 属性:fileNumber, 值:文件编号 属性:fileName, 值:文件

java中Set,Map,Stack一些简单用法

import java.util.Iterator; import java.util.Stack; import java.io.*; import java.util.Set; import java.util.Map; import java.util.HashMap; import java.util.TreeSet; public class StackUsing{ public static void main(String args[]) throws IOException{ S

Java中遍历数组使用foreach循环还是for循环?_java

从JDK1.5起,增加了新功能Foreach,它是for循环遍历数据的一种简写形式,使用的关键字依然是for,但参数格式不同.其详细用法为: for(Type e:collection){ //对变量e的使用} 参数说明: e:其类型Type是集合或数组中元素值的类型,该参数是集合或数组collection中的一个元素. collections: 要遍历的集合或数组,也可以是迭代器. 在循环体中使用参数e,该参数是foreach从集合或数组以及迭代器中取得的元素值,元素值是从头到尾进行遍历的.

java中关于Map的三种遍历方法详解_java

map的三种遍历方法!集合的一个很重要的操作---遍历,学习了三种遍历方法,三种方法各有优缺点~~ 复制代码 代码如下: /* * To change this template, choose Tools | Templates * and open the template in the editor. */package cn.tsp2c.liubao;import java.util.Collection;import java.util.HashMap;import java.util