java中collection借口中以及子接口中的add()。

java中collection借口中以及子接口中的add()。凡是涉及到用add()存储元素的集合锁存储的都是对象的地址码?那么map集合中的put(),存储的都是键值对... java中collection借口中以及子接口中的add()。凡是涉及到用add()存储元素的集合锁存储的都是对象的地址码?那么map集合中的put(),存储的都是键值对,那么map集合岂不是很消耗内存? 展开
 我来答
百度网友f4f0e8fd4
2013-08-25 · 超过40用户采纳过TA的回答
知道小有建树答主
回答量:186
采纳率:0%
帮助的人:113万
展开全部
map结构put键值对把值存储在缓存内的。需要的时候通过键找到缓存内的值,然后使用。就是预先开辟了一片缓存内存。并不会很消耗内存。
追问
put()存储的也是键的地址和值的地址吗?
追答
如果是基本数据类型比如一些数字,字节等就会以二进制的方式存储在内存空间中。如果是对象那么存储的其实的就是那个对象类的引用。也叫地址,
Billy119
2013-08-25 · TA获得超过124个赞
知道小有建树答主
回答量:70
采纳率:0%
帮助的人:92万
展开全部
是的 你说的都是对的

所以在性能上来讲 数组更优
但是Java中数组不可以改变长度,这一弊端太大了

也可以采用可变数组这种形式

但是在CSDN论坛上看到的 性能测试 :
大约10000条数据为分割线,大于10000条数据,建议用可变数组 性能更优
小于10000条 就用collection中的子接口就可以了 易于理解且方便~
追问
map()中的put()也是存储的键的地址和值的地址吗?
追答
这个嘛, 理解方面有差异

硬要说的话,除了基本数据类型(int,char,boolean等)都是存的地址

其实Java语言刻意淡化了地址这个概念,存入的都是对象~ 也可以说是对象的引用(指针)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zsp365954496
2013-08-25
知道答主
回答量:14
采纳率:0%
帮助的人:6.7万
展开全部
同意你的看法
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式