Copier des tableaux bidimensionnels en Java
Copier des tableaux multidimensionnels en Java peut être délicat, car l'attribution d'un tableau à un autre crée simplement une référence aux données originales plutôt qu’à une copie fidèle. Pour créer un véritable doublon, vous devez allouer une nouvelle mémoire et copier les éléments individuellement.
Dans votre cas, vous disposez de deux méthodes, old() et keepold(), pour copier le tableau actuel dans old et vice-versa. versa. Cependant, lorsque vous mettez à jour l'actuel, les modifications sont également reflétées dans l'ancien car elles font toutes deux référence aux mêmes données sous-jacentes.
Pour créer une copie fidèle, vous pouvez suivre les étapes suivantes :
En utilisant l'API streams (Java 8), vous pouvez simplifier ce processus :
<code class="java">int[][] copy = Arrays.stream(matrix).map(int[]::clone).toArray(int[][]::new);</code>
Cette ligne utilise la map() méthode pour créer un nouveau tableau pour chaque ligne, puis la méthode clone() pour copier chaque ligne, et enfin la méthode toArray() pour créer un nouveau tableau bidimensionnel à partir des lignes clonées.
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!