Maison  >  Article  >  Java  >  Comment copier correctement un tableau 2D en Java pour conserver les modifications ?

Comment copier correctement un tableau 2D en Java pour conserver les modifications ?

Linda Hamilton
Linda Hamiltonoriginal
2024-10-30 22:49:03855parcourir

How to Properly Copy a 2D Array in Java to Preserve Modifications?

Préserver les modifications de tableaux 2D avec duplication

En Java, lors de la création de copies d'objets, il est crucial de comprendre le comportement d'affectation des références. Dans le scénario donné, deux tableaux 2D nommés current et old sont définis, ainsi que des méthodes pour copier le contenu.

La méthode old() attribue le tableau actuel à old. Cependant, cela transfère simplement la référence au même tableau en mémoire. Lorsque des mises à jour sont apportées au courant, old reflète également ces changements, car ils pointent tous deux vers le même tableau sous-jacent.

La méthode keepold() tente d'attribuer l'ancien tableau au courant. Encore une fois, cela met uniquement à jour la référence, sans affecter le tableau actuel d'origine. En conséquence, lorsque des mises à jour sont apportées au courant, le contenu de l'ancien reste inchangé.

Pour créer une copie fidèle d'un tableau 2D en Java, il est nécessaire de copier manuellement chaque élément. Alternativement, pour une copie plus efficace, vous pouvez utiliser la méthode Arrays.stream().map()...toArray(), qui utilise l'API streams pour créer un clone de chaque ligne et les assembler dans un nouveau tableau.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn