JAVA 中map输出问题

publicclasstest{publicstaticvoidmain(String[]agrs){Map<String,String>map=newHashMap<S... public class test {
public static void main(String[] agrs) {

Map<String,String> map = new HashMap<String,String>();
map.put("x","y");
map.put("y","z");
map.put("y","p");
System.out.printf("%s%n", map.get(map.get("x")));
}
}
这是代码,这个程序输出 “p” 而不是“z” 为什么呢?
展开
 我来答
缘来丶缘浅
2013-12-21 · TA获得超过790个赞
知道小有建树答主
回答量:187
采纳率:0%
帮助的人:267万
展开全部
HashMap前面的是key,后面是对应的value,你在map中put了两次key为y所对应的value的值,后面的一次为p,所以map.get("x")获得y, 进而map.get("y")就得到p了啊
总该有办法吧
2013-12-21 · TA获得超过227个赞
知道小有建树答主
回答量:222
采纳率:93%
帮助的人:147万
展开全部
map.put("y","p"); 这句话已经把y的值修改成p了,所以输出的是p,而不是z
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式