2

如果我从我的 HashMap 中拉出一个对象,然后对其进行修改。它也会在 HashMap 内部进行修改吗?或者,修改后是否需要重新设置回HashMap?

例如:

HashMap<Integer,TwoPoints> loc = new HashMap<Integer,TwoPoints>();
...
...
TwoPoints tp = loc.get(Id); //pulls out the object
tp.setPoint(group, new Point(x,y); //a method to set something inside the object I pulled.
4

1 回答 1

5

您将获得对实际对象的引用,因此任何更改都会反映在其中。您不是在创建副本。

更新:

由于我使用了“参考”一词,我认为指出定义很重要。在 Java 的引擎盖下,事情并没有这么简单。但是引用(您正在做的事情)正在获取指向对象的指针的值。

于 2012-07-02T01:31:33.470 回答