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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© znouy_92 中级黑马   /  2015-3-22 16:18  /  2017 人查看  /  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 个回复

正序浏览
lwj123 发表于 2015-3-22 16:30
哥们,你得开api啊,put方法没有返回值吗?要是没有返回值,你的代码编译都是有问题的啦 ...

做的时候以为是void类型,后来查看了API才知道不是
回复 使用道具 举报
查下API,你会发现 put() 方法返回类型不是 void,而是 object
关于返回值,我是这么理解的,put() 方法其实有二个作用,一个是添加,那么返回值就是null
另一个作用就是覆盖,map里已经有这个 key 了,你再 put 一次,就把原来的 value 给覆盖了,
返回值就是原来的 value。
回复 使用道具 举报
哥们,你得开api啊,put方法没有返回值吗?要是没有返回值,你的代码编译都是有问题的啦
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马