A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

[Java] 纯文本查看 复制代码
public class Demo1_MapEntry {

	public static void main(String[] args) {
		Map<String, Integer> map = new HashMap<>();
		map.put("alex", 27);
		map.put("walker", 29);
		map.put("jacky", 28);
		Set<Map.Entry<String, Integer>> entrySet= map.entrySet();
		Iterator<Map.Entry<String, Integer>> it = entrySet.iterator();
		while(it.hasNext()) {
			Map.Entry<String, Integer> me = it.next();    //父类引用指向子类对象//Entry<String, Integer> me = it.next();    直接获取的是子类对象
			String key = me.getKey();
			Integer value = me.getValue();
			System.out.println(key + "---" + value);
		}
	}

}


看视频讲解,Map.Entry是通过子类对象HashMap$Entry来实现的,可是我在Eclipse里面找不到,这是怎么回事?
是不是JDK1.8取消了HashMap$Entry?

1.png (232.33 KB, 下载次数: 9)

1.png

6 个回复

倒序浏览
可能描述不清楚。这么问吧,Map.Entry<String, Integer>是接口,它的getKey()跟getValue()是抽象方法,这两个抽象方法是怎么实现的?求大神解答
回复 使用道具 举报
可能是申明成了private吧
来自宇宙超级黑马专属苹果客户端来自宇宙超级黑马专属苹果客户端
回复 使用道具 举报
Mr_Maty 发表于 2017-3-11 12:21
可能是申明成了private吧

声明称private,Eclipse也应该找得到啊
回复 使用道具 举报
能找到啊
回复 使用道具 举报

你用的JDK是哪个版本?我的找不到啊
回复 使用道具 举报
mrwalker 发表于 2017-3-12 13:46
你用的JDK是哪个版本?我的找不到啊

1.7的   eclipse对1.8的支持貌似不咋好
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马