Beibehalten von 2D-Array-Änderungen durch Duplizierung
In Java ist es beim Erstellen von Objektkopien wichtig, das Referenzzuweisungsverhalten zu verstehen. Im gegebenen Szenario werden zwei 2D-Arrays mit den Namen „current“ und „old“ definiert, zusammen mit Methoden zum Kopieren des Inhalts.
Die old()-Methode weist das aktuelle Array „old“ zu. Allerdings wird dadurch lediglich die Referenz auf dasselbe Array im Speicher übertragen. Wenn Aktualisierungen an „current“ vorgenommen werden, spiegelt „old“ diese Änderungen ebenfalls wider, da beide auf dasselbe zugrunde liegende Array verweisen.
Die Methode „keepold()“ versucht, das alte Array „current“ zuzuweisen. Auch hier wird nur die Referenz aktualisiert, das ursprüngliche aktuelle Array bleibt davon unberührt. Daher bleiben bei Aktualisierungen auf die aktuelle Version die alten Inhalte unverändert.
Um eine echte Kopie eines 2D-Arrays in Java zu erstellen, ist es notwendig, jedes Element manuell zu kopieren. Alternativ können Sie für ein effizienteres Kopieren die Methode Arrays.stream().map()...toArray() verwenden, die mithilfe der Streams-API einen Klon jeder Zeile erstellt und diese zu einem neuen Array zusammenfügt.
Das obige ist der detaillierte Inhalt vonWie kopiert man ein 2D-Array in Java ordnungsgemäß, um Änderungen beizubehalten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!