首页 > 编程语言 > 详细

java集合Map&HashMap

时间:2016-11-01 13:32:14      阅读:132      评论:0      收藏:0      [点我收藏+]

http://blog.csdn.net/u011240877/article/category/6447444/1

Map 接口提供了三种角度来分析 Map:

  • KeySet:KeySet 是一个 Map 中键(key)的集合,以 Set 的形式保存,不允许重复,因此键存储的对象需要重写 equals() 和 hashCode() 方法。可以通过 map.keySet() 方法获得。  
  •      使用 keySet 遍历:    
  • Set set = map.keySet();
        for (Object key : set) {
            System.out.println(map.get(key));
        }
  •  

  • Values:Values 是一个 Map 中值 (value) 的集合,以 Collection 的形式保存,因此可以重复。可以通过map.values() 方法获得。
  •      使用 values 遍历:
  •      Collection values = map.values();
        Iterator iterator = values.iterator();
        while (iterator.hasNext()){
            System.out.println("value " + iterator.next());
        }
  • Entry:Entry 是 Map 接口中的静态内部接口,表示一个键值对的映射,例如key1-value1这一组映射关系。
  •      
    • getKey() , 获取这组映射中的键 key
    • getValue() , 获取这组映射中的值 value
    • setValue() , 修改这组映射中的值
    • hashCode() , 返回这个 Entry 的哈希值
    • equals() , 对比 key-value 是否相等

    通过 Map.entrySet() 方法获得的是一组 Entry 的集合,保存在 Set 中,所以 Map 中的 Entry 也不能重复。

    public Set<Map.Entry<K,V>> entrySet();
  •      

    使用 Entry 遍历

  • Set entrySet = map.entrySet();
        for (Object o : entrySet) {
            Map.Entry entry = (Map.Entry) o;
            System.out.println(entry);      //key=value
            System.out.println(entry.getKey() + " / " + entry.getValue());
        }
  • ******************************************************************************************************************************
  •  

java集合Map&HashMap

原文:http://www.cnblogs.com/kekang/p/6018862.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!