Java TreeMap 获取方法

Java TreeMap get method

当我在 Java TreeMap<K, V> 中使用 V get(Object key) 方法时,我获得了连接到 V get(Object key) 方法中插入的键的值的全新副本,或者我在 TreeMap?

中得到了一个 "reference" 到值 V

Map#get()returns一个引用但是Map#put()方法也存储了一个引用只要。实际的 Object 位于 上。事实上,TreeMapEntry<K,V> 引用一起工作, 上的实际 Entry 对象然后指向实际的 value 对象再次位于 上。

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

因此,他们必须凑合使用给定的参考文献,这就是您使用 get().

检索它们时得到的结果