lequel est le plus efficace en mémoire?
lequel fonctionne le plus vite avec 1000000 éléments?
Y a-t-il quelque chose de mieux?Liste ou ArrayList? (Beaucoup d'éléments)
Répondre
Un List<T>
est généralement préférable à l'utilisation d'un ArrayList
car il s'agit d'une collection de type sécurisée. Cela signifie que vous obtenez la sécurité du type de temps de construction. Il est également plus efficace de la mémoire pour les types de valeur car les entrées dans un ArrayList
seront mis en boîte parce que sa liste d'objets de type:
par exemple: Ajout d'un nombre entier à un List<int>
mettra les données sur le tas en utilisant un int[]
comme le sous-jacent Structure de données. L'ajout d'un entier à ArrayList
placera les données sur le tas, mais comme la structure de données sous-jacente est object[]
, les données doivent être encadrées, ce qui signifie qu'un pointeur doit également être stocké sur le tas, ce qui nécessite plus de mémoire allouée.
L'allocation de mémoire pour un ArrayList
et un List<T> : class
(une liste de types de référence) est exactement le même.
@Charlie: L'ajout d'un entier à une liste
@Luke, merci d'avoir mis à jour. – Charlie
List<T>
est mieux que ArrayList
:
Un tableau d'un type spécifique (autre que l'objet) a de meilleures performances qu'un ArrayList parce que les éléments de ArrayList sont de type objet et, par conséquent, la boxe et unboxing généralement se produire lors du stockage ou de la récupération d'un type de valeur. Cependant, une liste peut avoir des performances similaires à celles d'un tableau du même type si aucune réallocation n'est requise; c'est-à-dire si la capacité initiale est une bonne approximation de la taille maximale de la liste.
- 1. Python: Obtenir beaucoup liste d'une liste
- 2. ArrayList copie superficielle iterate ou clone()
- 3. Tableau chaîne et Arraylist/liste en C++
- 4. StringCollection ou ArrayList dans la classe
- 5. Dois-je utiliser un ArrayList ou IList
- 6. sql optimize recherche beaucoup-beaucoup
- 7. Utiliser Hashtable, Vector ou HashMap ou ArrayList dans Java
- 8. Linq beaucoup à beaucoup?
- 9. obtenir la taille de DataTable ou ArrayList en mémoire
- 10. C# tableau Déplacer un élément (Non ArrayList/Liste générique)
- 11. ArrayList Recherche .net
- 12. compte arraylist
- 13. Comment afficher le contenu d'un arraylist dans une liste déroulante
- 14. VB.NET ArrayList à la liste (Of T) tapé copie/conversion
- 15. Enregistrer une liste de chaînes uniques dans le ArrayList
- 16. enregistrer pile dans arraylist
- 17. convertir tableau en arraylist?
- 18. beaucoup à beaucoup dans django
- 19. Comment créer un Array ou ArrayList d'objets en C#?
- 20. Récursivité, Arraylist
- 21. ArrayList BinarySearch
- 22. Entity Framework Beaucoup à beaucoup CRUD
- 23. Recherche arraylist d'objets
- 24. Suppression de ArrayList Java
- 25. Java Bean ArrayList
- 26. Itération et traitement d'une ArrayList
- 27. NHibernate Fluent auto référençant beaucoup à beaucoup
- 28. sélectionnez beaucoup à travers beaucoup ... genre de
- 29. Vb.NET String.Format avec ArrayList
- 30. Commander une liste (C#) par beaucoup de champs?
@MYYN: merci. – Behrooz
@behrooz, بفرمائید – miku