首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

java 地图的遍历

2012-08-24 
java map的遍历Java代码:PRE classjava namecodepackage TESTimport java.util.Collectionimport

java map的遍历
Java代码:
<PRE class=java name="code">package TEST;  

 

import java.util.Collection;  

import java.util.HashMap;  

import java.util.Iterator;  

import java.util.Map;  

import java.util.Set;  

import java.util.Map.Entry;  

 

/** 

* @author Administrator 



*/ 

public class TraversalMap {  

    public static void main(String[] args) {  

        Map<Object, Object> map = buildMap();  

//      TraversalMap1(map);  

//      TraversalMap2(map);  

        TraversalMap3(map);  

//      TraversalMap4(map);  

    }  

    /** 

     * @return map 

     */ 

    public static Map<Object, Object> buildMap(){  

        Map<Object, Object> map = new HashMap<Object, Object>();  

        map.put("王力宏", "你不知道的事");  

        map.put("梁静茹", "可惜不是你   ");  

        map.put("凤凰传奇", "荷塘月色");  

        map.put("王菲", "红豆");  

        map.put("周杰伦", "半兽人");  

        map.put("邓丽君", "好久不见");  

        return map;  

    }  

      
    public static void TraversalMap1(Map<Object, Object> map){  

        Set<Object> set = map.keySet();  

        Iterator<Object> it = set.iterator();  

        while(it.hasNext()){  

            Object o_key = it.next();  

            System.out.println("map : <key : "+o_key+"--value : "+map.get(o_key)+">");  

        }  

    }  

      
      
    /** 

     * @param map 

     * 得到map的values 

     */ 

    public static void TraversalMap2(Map<Object, Object> map){  

        Collection<Object> c = map.values();  

        Iterator<Object> it = c.iterator();  

        while(it.hasNext()){  

            Object o_key = it.next();  

            System.out.println("map : <key : "+"****"+"--value : "+o_key+">");  

        }  

    }  

      
      
    /**使用Map.Entry得到这一个map,然后分离出key和values 

     * @param map 

     */ 

    public static void TraversalMap3(Map<Object, Object> map){  

        Set<Entry<Object,Object>> set = map.entrySet();  

        Iterator<Entry<Object, Object>> it = set.iterator();  

        while(it.hasNext()){  

            Entry<Object, Object> map_entry = it.next();  

            System.out.println("map : <key : "+map_entry.getKey()+"--value : "+map_entry.getValue()+">");  

        }  

    }  

      
      
    /** 

     * 简单点的 

     * @param map 

     */ 

    public static void TraversalMap4(Map<Object, Object> map){  

        for(Object o: map.values()){  

        System.out.println("map : <key : "+getKey(map, o)+"--value : "+o+">");  

        }  

    }  

      
    /** 

     * 根据value得到key 

     * @param Map 

     * @param Object 

     */ 

    public static Object getKey(Map<Object, Object> map,Object value){  

        Set<Object> set = map.keySet();  

        Iterator<Object> it = set.iterator();  

        while(it.hasNext()){  

            Object temp_o = it.next();  

            if(map.get(temp_o).equals(value)){  

                return temp_o;  

            }  

        }  

        return null;  

    }  

      
      
      
      
}  

</PRE>  

  

热点排行