黑马程序员技术交流社区

标题: HashMap的entry是个什么意思?? [打印本页]

作者: micro_hx    时间: 2015-6-11 11:23
标题: HashMap的entry是个什么意思??
package com.text;

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map.Entry;
import java.util.Set;

public class Test6 {
        public static void main(String[] args) {
                        HashMap<String,String> map = new HashMap<String,String>();
                        map.put("a", "11");
                        map.put("b", "22");
                        map.put("c", "33");
                        map.put("d", "44");
                        map.put("e", "55");
                       
                Set<Entry<String,String>> entry =         map.entrySet() ;
                Iterator<Entry<String,String>> iterator =         entry.iterator() ;
                while(iterator.hasNext()){
                        Entry<String,String> en = iterator.next() ;
                        System.out.println(en.getKey() + "===" + en.getValue());
                }
        }
}


有谁能讲一下这个entry内部是怎么储存的,,,Set型的entry怎么将key和value转成entry啊???
作者: 精灵来了    时间: 2015-6-11 11:42
在map集合中存储着一个一个键值对(key,value),这些键值对通过Set型集合.entrySet()方法取出,当取出键值对后,就可以调用getKey()和getValue分别取出key和Value了
作者: 途中ms前进    时间: 2015-6-11 12:44
路过学习学习
作者: 路途遥远    时间: 2015-6-11 13:33
1楼正解
作者: micro_hx    时间: 2015-6-13 15:27
精灵来了 发表于 2015-6-11 11:42
在map集合中存储着一个一个键值对(key,value),这些键值对通过Set型集合.entrySet()方法取出,当取出键值 ...

我的意思是,map形式的存储单位是MapEntry,但是MapEntry是啥样的啊??
作者: guiqulaixi    时间: 2015-6-13 15:54
Map.Entry是Map里的内部类  是个接口  具体实现自己看相关源码吧  
作者: 精灵来了    时间: 2015-6-13 16:14
micro_hx 发表于 2015-6-13 15:27
我的意思是,map形式的存储单位是MapEntry,但是MapEntry是啥样的啊??

map集合的存储类型是MapEntry,MapEntry就是这一个个键值对(key,value)的类型,而键值对是对现实世界中一一对应关系的描述,就是可以根据一个键值获得对应的一个值。比较通俗的解释,一张结婚证就是(键值对)MapEntry,上面的丈夫的名字(键),对应唯一的妻子名字(值),这就是键值对,也就是MapEntry(集合键值对)
作者: micro_hx    时间: 2015-6-13 16:17
精灵来了 发表于 2015-6-13 16:14
map集合的存储类型是MapEntry,MapEntry就是这一个个键值对(key,value)的类型,而键值对是对现实世界中 ...

3Q,最近一直搞数据结构去了,现在我基本上明白了它的内部结构了啊。。。。
作者: Foundmoon    时间: 2015-6-13 16:18
micro_hx 发表于 2015-6-13 15:27
我的意思是,map形式的存储单位是MapEntry,但是MapEntry是啥样的啊??

不要太纠结概念,知道是键值对的关系就可以了
作者: xgd6612    时间: 2015-6-13 21:16
灰常简单的Map集合取出方式 一共两种  一个是 entrySet 一个是KeySet  视频里面都有~~~




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2