Java Problème copie tableau à 2 dimensions [Résolu/Fermé]

Signaler
-
 geekounet -
Bonjour,

J'ai un problème en Java avec la copie de tableaux d'int à 2 dimensions.

Pour copier un tableau dans un autre je fais la chose suivante :
for (int i = 0; i < nb; i++) {
destination[i] = (int[]) model[i].clone();
}
//nb est la taille de mes tableaux

Voilà j'ai une méthode d'une classe en java dont le comportement est le suivant:

//Copie du tableau model dans tableau destination

//Traitements sur le tableau destination

Après le traitement les tableaux devraient être différents. Le tableau destination devrait avoir été modifié et le tableau model rester tel quel. Hors quand je modifie le tableau destination, le tableau model est lui aussi modifié!
Pourtant je n'ai pas fais destination = model !!

En fait je ne sais pas si le problème vient de la copie de mon tableau ou bien d'ailleurs.

Quelqu'un pourrait-il me dire si la copie de mon tableau semble juste??


3 réponses

Messages postés
16372
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
23 juillet 2021
2 858
C'est le clone() qui coince je pense. Pour que ça marche il faudrait que les tableaux soient Cloneable or je ne pense pas qu'ils le soient... Il vaudrait mieux utiliser System.arrayCopy, mais vu ton problème tu peux aussi faire une deuxième boucle for, ce serait bien mieux.
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 65492 internautes nous ont dit merci ce mois-ci

Ok merci j'ai fait comme tu as dit avec 2 boucles for et ça a l'air de marcher!

Bon après j'avais un autre problème que j'ai réussi à résoudre aussi, merci pour ton aide!
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 65492 internautes nous ont dit merci ce mois-ci

le cast!!