为了账号安全,请及时绑定邮箱和手机立即绑定

map集合初始化的问题

在测试类里, Map<String ,Object> param=new HashMap<String, Object>();得到param的集合,如果要通过两个属性查找对象时,第二次给param初始化的时候就不用在前面加 Map<String ,Object> 就可以初始化了吗,这种初始化我不太懂,如果叫我自己来写我可能不会给上个param再次初始化,而是另外实例化一个param2,来存信息

正在回答

2 回答

因为上次 Map<String ,Object> param=new HashMap<String, Object>(); 就相当于创建了个集合的对象 param ,而每个 map 中的 key 是一样的,就可以直接用已经创建的 param 来存储,没有新创建容器,只是更新了 value 而已,而你新创建 param2 就相当于又在内存中开辟了空间存储有相同 key 的容器,浪费了空间。

0 回复 有任何疑惑可以回复我~
#1

我爱孙佳怡 提问者

那list,set也是一样的吗
2019-06-14 回复 有任何疑惑可以回复我~
#2

Uestc_L 回复 我爱孙佳怡 提问者

对的,根本就在于它是一个容器对象
2019-06-14 回复 有任何疑惑可以回复我~

这个位置说一下自己的思考,Map<String,Object>是类型,param在创建的过程中两次都是new HashMap<String,Object>() 也就是说虽然前后两个变量豆角param,但是指向的内存地址是不一样的。我认为这就是两个不同的变量,只是名称一样而已。

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
JDBC之 “ 对岸的女孩看过来”
  • 参与学习       99324    人
  • 解答问题       856    个

一起领略JDBC的奥秘,为进一步学习集成框架打下良好的基础

进入课程

map集合初始化的问题

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信