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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© znouy_92 中级黑马   /  2015-3-22 16:18  /  2028 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

往Map集合中添加元素,如下:
System.out.println("put:"+map.put("01","zhangsan"));
System.out.println("put:"+map.put("01","wangwu"));
为什么第一次打印null,第二次打印wangwu呢?put()方法不是void类型吗?怎么会返回wangwu呢?

3 个回复

倒序浏览
哥们,你得开api啊,put方法没有返回值吗?要是没有返回值,你的代码编译都是有问题的啦
回复 使用道具 举报
查下API,你会发现 put() 方法返回类型不是 void,而是 object
关于返回值,我是这么理解的,put() 方法其实有二个作用,一个是添加,那么返回值就是null
另一个作用就是覆盖,map里已经有这个 key 了,你再 put 一次,就把原来的 value 给覆盖了,
返回值就是原来的 value。
回复 使用道具 举报
lwj123 发表于 2015-3-22 16:30
哥们,你得开api啊,put方法没有返回值吗?要是没有返回值,你的代码编译都是有问题的啦 ...

做的时候以为是void类型,后来查看了API才知道不是
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马