J'ai un ArrayList
et je veux le copier exactement. J'utilise des classes d'utilité si possible en supposant que quelqu'un a passé du temps à le faire correctement. Donc, naturellement, je me retrouve avec la classe Collections
qui contient une méthode de copie.Java Collections liste de copie - Je ne comprends pas
Supposons que je donne les résultats suivants:
List<String> a = new ArrayList<String>();
a.add("a");
a.add("b");
a.add("c");
List<String> b = new ArrayList<String>(a.size());
Collections.copy(b,a);
Cela échoue parce que fondamentalement, il pense b
n'est pas assez grand pour contenir a
. Oui, je sais b
a la taille 0, mais il devrait être assez grand maintenant ne devrait-il pas? Si je dois d'abord remplir b
, puis Collections.copy()
devient une fonction complètement inutile dans mon esprit. Donc, sauf pour la programmation d'une fonction de copie (que je vais faire maintenant) est-il une bonne façon de le faire?
Le doc pour Collections.copy() dit "La liste de destination doit être au moins aussi longtemps que la liste des sources.". – DJClayworth
Je ne pense pas que la réponse acceptée est correcte – Bozho
Vous avez accepté une réponse incorrecte, Jasper Floor. J'espère sincèrement que vous n'avez pas utilisé les mauvaises informations dans votre code! – Malcolm