¿Hay un límite de elementos que se pueden almacenar en una lista? ¿o simplemente puedes seguir añadiendo elementos hasta que te quedes sin memoria?¿Hay un límite de elementos que podrían almacenarse en una lista?
7
A
Respuesta
20
La implementación actual de List<T>
utiliza Int32
todas partes - para construir su matriz de soporte, por su propiedad Count
, como un indexador y para todas sus operaciones internas - por lo que hay una corriente teórico máximo de Int32.MaxValue
artículos (2^31-1
o 2147483647
).
Pero .NET Framework también tiene un límite máximo de tamaño de objeto de 2 GB, por lo que solo se acercará al límite de elementos con listas de elementos de un solo byte como List<byte>
o List<bool>
.
En la práctica, probablemente se quede sin memoria contigua antes de llegar a cualquiera de esos límites.
Cuestiones relacionadas
- 1. ¿Qué elementos de pdf podrían causar bloqueos?
- 2. hilos múltiples que agregan elementos a una lista. ¿Por qué hay siempre menos elementos en la lista de lo esperado?
- 3. ¿Hay un límite en la duración de una solicitud GET?
- 4. ¿Hay un límite para System.IO.FileShare?
- 5. ¿Hay un límite en PHP file_get_contents?
- 6. devolver una lista de elementos de una lista en OCaml
- 7. Sumando elementos en una lista
- 8. límite "cada una" lista de rieles
- 9. Límite Número de resultados devueltos en una lista de Linq
- 10. Mathematica: genera una lista de números primos hasta un límite
- 11. Copie una lista java con un límite de entradas
- 12. Tamaño máximo de objetos que pueden almacenarse en NSUserDefaults
- 13. Eliminar elementos a medida que atraviesan una lista en Python
- 14. Eliminar elementos de una lista que contiene caracteres específicos
- 15. Agregar elementos en una lista de diccionarios
- 16. elementos únicos en una lista de haskell
- 17. Encuentra elementos de una lista que no está en la segunda lista (en Scala)
- 18. ¿Hay un equivalente a String.Split que devuelve una lista genérica?
- 19. ¿Anida los elementos de la lista dentro de los elementos de lista de una lista ordenada?
- 20. ¿Hay un límite de entradas en un diccionario <>?
- 21. ¿Mejor manera de verificar si hay elementos en la lista?
- 22. Eliminar elementos de una lista en otra
- 23. ¿Hay un límite superior para BigInteger?
- 24. En C# cómo puedo deserializar un documento XML que contiene una lista de elementos sin un elemento de lista circundante
- 25. ¿Hay clases de recopilación JAVA nativas que extienden la lista que no permite elementos nulos?
- 26. Editar elementos en una lista en python
- 27. elementos divididos de una lista en python
- 28. ¿Hay una cola de tamaño fijo que elimine elementos excesivos?
- 29. Anexar elementos de un conjunto a una lista en Python
- 30. Intercambiando elementos en una lista Lisp común
* Teóricamente * eso significa que solo puede acceder aleatoriamente a los elementos hasta 'Int32.MaxValue', no cuántos elementos pueden haber, * teóricamente *, por supuesto. –
@Martinho: Bueno, la implementación actual usa 'Int32' * en todas partes *, por lo que no es solo el acceso aleatorio el que está restringido a 2^31 elementos. (Por supuesto, el uso de 'Int32' internamente es solo un detalle de implementación, pero propiedades como el indexador y' Count' son parte del contrato público). – LukeH