Java TreeMap获取方法

时间:2015-02-17 16:23:27

标签: java methods get key treemap

当我在Java V get(Object key)中使用TreeMap<K, V>方法时,我获得了与我在V get(Object key)方法中插入的键相关的值的全新副本,或者我得到了一个& #34;参考&#34;到TreeMap内的值V?

2 个答案:

答案 0 :(得分:3)

Map#get()会返回引用,但Map#put()方法也只会存储引用。实际的Object存在于上。事实上,TreeMapEntry<K,V>引用一起工作,而堆上的实际Entry对象则指向实际的 上的对象。

答案 1 :(得分:1)

通常,Java的标准集合不会复制它们给出的值。如果您注意到,这些值不会被限制为Cloneable(即使它们是{,由于Cloneable的奇怪性,它也不会确保它们实际上是可克隆的)。并且没有其他方法可以创建副本(因为您无法在泛型类型变量上运行new)。

因此,他们必须处理所提供的参考资料,以及使用get()检索时所获得的参考资料。