私の質問は、Javaを使用すると、ツリーなどのコレクションを持つことが可能です。ツリー内のノードを変数に保存します。私の理解では同じオブジェクトアドレスであるので、ローカル変数を使ってノード内のデータを変更すると、コレクション内のデータも変更されますか?ローカル変数を使用してコレクション内の値を変更する
0
A
答えて
0
ローカル変数はノードへの参照を保持するため、ローカル変数のデータを変更すると、参照するオブジェクトのデータが実際に変更されます。この場合、ツリー内のノードも同じオブジェクトであるため変更されます。
敬具
アレックス
0
答えはちょっとです。変数var
があり、アドレスがコレクションthings
に格納されているとします。次に、var = some_var
のような操作を行うと、コレクション内のデータは変更されません。これは、割り当て内のvarのアドレスを上書きしているためです。しかし、何らかの形でvarを変更すると、両方が変更されます。これは、アドレスが同じままであるために発生し、正しいメモリに書き込んでいます。例えばvar.field = some_data
はthings[var].field
を変更します。
このため、var
のコピーをthings
にロードすることをお勧めします。これを誤って接続しないでください。人々はしばしば、このようなものを実現させずにつなぎ、変数が変更されたことを認識せずに変数を変更します。
関連する問題
- 1. ブーストスピリット:ローカル変数値を変更してchar_を解析する
- 2. 関数内の変数の値を変更してスクープ外で使用する
- 3. コード内の(ローカル変数 '...'は使用されない)ローカル変数の前景色を変更する方法
- 4. AWKを使用してスクリプト内の変数を変更する
- 5. HandleBarjs内の他のローカル変数の代わりに1つのローカル変数の値を使用する方法
- 6. FileMaker Pro 15を使用してスクリプト内のローカル変数またはグローバル変数の値を返す方法
- 7. jsonparserを使用してjsonファイル内の値を変更する
- 8. Java 8ラムダ内でのローカルVavr不変コレクションの使用
- 9. Sharpdevelopローカル変数を変更します
- 10. Javaのリフレクションを使用してコレクションの内容を変更します
- 11. ng-clickを使用してブール値変数の値を変更する
- 12. ローカル変数を使用してString.Formatを使用するC#
- 13. パラメータを使用して関数内のグローバル変数を変更する方法
- 14. SelectManyを使用して元のコレクションを変更する方法
- 15. jquery内のjsonコレクションを変更する
- 16. ローカル関数変数をループ内で使用する
- 17. は、内側の関数を介してローカル変数の変化
- 18. subscribe()内のローカル変数に値を割り当てました
- 19. eventListener内の変更変数の使用
- 20. Meteorのコレクション値を変更する
- 21. JavaScript内のifステートメント内の変数の値を変更する
- 22. bashを使って配列内の変数の値を変更する
- 23. dplyrを使用してrの変数の値を変更する
- 24. 変数の値/型を使用して列の名前を変更する
- 25. セットを使用! drschemeの変数の値を変更する
- 26. ローカル変数の値を使用後にクリア/ガベージコレクションする方法
- 27. ポインタキャストを使用するローカル変数
- 28. サブ/関数を使用して変数を変更する
- 29. jvmtiを使用してメソッドのローカル変数とクラス変数の値を取得する方法
- 30. vue.jsを使用してコンポーネント内の変数を変更します。
なぜあなたはそれをテストしないのですか?しかし、同じオブジェクトに対する2つの参照がある場合、1つの参照を使用して一意のオブジェクトの状態を変更するとそのオブジェクトが変更され、他の参照は同じ変更オブジェクトを指しています。 –