1

作成したクラスにマップを渡した場合、そのクラスがマップを変更すると、元々渡されたmainメソッドのマップが変更されますか?

2番目のインスタンスは同じマップを指していますか?

4

4 に答える 4

1

はい、発信者には、着信者が行った変更が表示されます。

2番目のインスタンスは同じマップを指していますか?

2番目のインスタンスはありません(マップのコピーを明示的に作成しない限り)。あなたが持っているのは、同じインスタンスへの2つの参照です。

于 2012-12-05T21:01:39.750 に答える
1

はい。元のマップ参照(コピーマップオブジェクトではない)が渡され、他のクラスのマップに加えられた変更は、mainメソッドのマップにも反映されます。

于 2012-12-05T21:01:56.773 に答える
0

はい、参照値を渡しています。

これは実験的に証明するのは簡単なことのようですよね?

于 2012-12-05T21:01:04.003 に答える
0

マップがいずれかのメソッドに渡された場合、このメソッドはマップのコンテンツを変更できます。このコンテンツは、マップにアクセスするすべてのユーザーに表示されます。ただし、そのメソッドは、たとえばマップを別のマップに置き換えるなどして、マップオブジェクト自体を変更することはできません。

于 2012-12-05T21:05:11.660 に答える