重複による 2D 配列の変更の保持
Java では、オブジェクトのコピーを作成するときに、参照割り当ての動作を理解することが重要です。指定されたシナリオでは、current と old という名前の 2 つの 2D 配列が、内容をコピーするメソッドとともに定義されています。
old() メソッドは、current 配列を old に割り当てます。ただし、これは単に参照をメモリ内の同じ配列に転送するだけです。 current に対して更新が行われると、old も同じ基になる配列を指すため、これらの変更が反映されます。
keepold() メソッドは、古い配列を current に割り当てようとします。繰り返しますが、これは参照のみを更新し、元の現在の配列には影響しません。その結果、現在のものに更新が行われると、古い内容は変更されません。
Java で 2D 配列の正確なコピーを作成するには、各要素を手動でコピーする必要があります。あるいは、より効率的にコピーするために、Arrays.stream().map()...toArray() メソッドを利用することもできます。このメソッドは、ストリーム API を使用して各行のクローンを作成し、それらを新しい配列にアセンブルします。
以上がJava で 2D 配列を適切にコピーして変更を保存するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。