Ceci est mon code simple. J'ai besoin d'un clone de la liste de l'arraylaystatu. GTBETOBSOYENIBELGE est une entité. Mais il y a un problème de coulée tout le code est-ce. P> p>
3 Réponses :
La méthode regarder l'énoncé problématique: p> Vous copiez un vecteur et que vous l'attribuez à servis.listonaystatus4belge code> renvoie un Vecteur . Un
vecteur code> implémente la liste code> interface code> mais n'est pas un
arayliste code>. Par conséquent, vous ne pouvez pas la jeter à un.
cloneonaystatu code >. Vous devriez être capable de le faire comme ceci: P>
cloneOnayStatu = new ArrayList<>(listOnayStatu);
Merci klitos mais la méthode clone () ne fonctionne pas avec la liste.
Lorsque ListonAnstatu est mis à jour, cloneonaystatu est la mise à jour en même temps. Je veux que ClononaAnstatu ait la taille précédente de ListonAnstatu lorsqu'il est mis à jour.
The clone () code> méthode et la nouvelle arraylist neuf <> () code> constructeur crée des copies qui sont pas i> mis à jour lorsque l'original est mis à jour. Cependant, notez que ces copies sont simplement des copies des références i>. Si les objets référencés sont eux-mêmes mis à jour, les deux listes verront la mise à jour, car les éléments des deux listes se rapportent au même objet. Peut-être que vous voulez une copie profonde. Pour cela, vous devrez faire une itération sur tous les éléments et créer une copie de chaque élément.
Vous pouvez simplement utiliser le constructeur de copie de ArrayList code> qui accepte une collection
EXTENDE E> CODE>:
List<GtbEtobsOYenibelge> listOnayStatu = servis.listOnayStatus4Belge(user.getBirimId().getId());
List<GtbEtobsOYenibelge> cloneOnayStatu = new ArrayList<>(listOnayStatu);
Vous pouvez essayer de l'enregistrer en tant que nouvelle arraylist.
cloneOnayStatu.addAll(listOnayStatu);
Cet extrait ne provoque pas l'erreur que vous décrivez. Pouvez-vous partager un exemple de reproductible minimal ?