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 に答える