Quelle est la différence entre Array, Arrays, ArrayList, Vector,....., pourquoi autant de classes différentes et comment choisir ?
Merci d'avance
Version imprimable
Quelle est la différence entre Array, Arrays, ArrayList, Vector,....., pourquoi autant de classes différentes et comment choisir ?
Merci d'avance
Il y a une explication assez intéressante sur la FAQ : ici
Il y a donc bien une raison à l'existence de ces différentes listes, elles dépendront de ton besoin.
merci, j'avais cherché dans les messages, et abandonné de guerre lasse, je navais pas regardé la FAQ, à nouveau,
un grand merci
Pour résumer :
- Vector est obsolète, gardé pour raisons de compatibilité. Utiliser ArrayList à la place.
- ArrayList implémente List et Collection. C'est mieux qu'un tableau parce qu'on peut faire varier sa taille, et on profite de tout ce qui gère les Collections et les Lists. Ça gère aussi les génériques.
C'est moins bien qu'un tableau parce que ça ne gère pas les types de base, comme int, et on ne peut pas les initialiser carrés (int[][] matrice = new int[3][5];)
- Array et Arrays ne sont pas des tableaux, ce sont des classes utilitaires pour faire des choses aux tableaux.
-- Array est la classe de réflectivité sur les tableau : création de nouveau tableau de type et dimension dynamiques, extraction d'éléments d'un tableau de type et dimension quelconque.
-- Arrays fournit des utilitaires sans rapport avec la réflectivité : copie de tableaux, tri de tableaux, comparaison de tableaux, remplissage de tableaux, conversion tableau vers List...