Globalement, tout à été dis.. mais je veux qd même confirmer
:
Si tu ne crée ton ArrayList sans spécifier la taille; il créera un tableau d'une taille de 10; ensuite, à chaque fois que tu rajouteras un élément qui dépassera la taille disponible il recréera un tableau en calculant sa nouvelle capacité ainsi:
int newCapacity = (oldCapacity * 3)/2 ;
Il recopiera ensuite tous les éléments de l'ancien vers le nouveau tableau.
Donc, si tu y rajoutes bcp d'éléments, il perdra inutilement son temps en recopiage de données, donc vaut mieux que tu déclares, si tu sais, une capacité initiale (et pas forcement 300, ou qu'importe ta taille maximum)..
Pour 300 éléments je ne sais pas si cela fera une grande différence. par contre si tu en as plusieurs (centaines) d'arrayList ainsi, ca deviendrait plus intéressant.. (faudra alors choisir entre la mémoire et la performance..)
Voilà... maintenant (bien que je suis assez sur de moi), je peux tjs me tromper
Partager