Gibt es eine Grenze für Elemente, die in einer Liste gespeichert werden könnten? Oder du kannst einfach Elemente hinzufügen, bis du keinen Speicher mehr hast?Gibt es eine Grenze für Elemente, die in einer Liste gespeichert werden könnten?
7
A
Antwort
20
Die aktuelle Implementierung von List<T>
verwendet Int32
überall - seine Trägeranordnung zu konstruieren, die für ihre Count
Eigenschaft, als Indexer und für alle seine internen Operationen - so gibt es einen aktuellen theoretischen maximal Int32.MaxValue
Artikel (2^31-1
oder 2147483647
).
Aber das .NET-Framework hat auch eine maximale Objektgröße von 2 GB, so dass Sie nur in der Nähe der Artikel Grenze mit Listen von Single-Byte-Elemente wie List<byte>
oder List<bool>
bekommen.
In der Praxis wird Ihnen wahrscheinlich kein zusammenhängender Speicher mehr zur Verfügung stehen, bevor Sie eines dieser Grenzwerte erreichen.
Verwandte Themen
- 1. MySQL Gibt es eine Grenze für InnerJoin?
- 2. Theoretische Grenze für die Anzahl der Schlüssel (Objekte), die in einer HashMap gespeichert werden können?
- 3. RIA-Dienste: Gibt es eine Grenze für die JSON-Deserialisierung?
- 4. Elemente, die nicht in Sitzung gespeichert werden
- 5. Grenze für SVG-Elemente
- 6. R - gibt es eine Grenze, um Daten, die
- 7. Gibt es eine Liste für EventTrigger EventNames?
- 8. Gibt es eine Möglichkeit, zu einer Liste von Doubles für die Bearbeitung in WPF zu binden?
- 9. Gibt es eine maximale Grenze für die Größe einer Variablen, die auf einem Stack zugewiesen werden sollte?
- 10. Liste möglicher Anwendungen, die eine Datei öffnen könnten
- 11. Gibt es eine alternative Möglichkeit, eine zusätzliche Grenze anzugeben, wenn die erste Grenze ein Typparameter ist?
- 12. Gibt es eine Grenze für Hintergrundarbeiter? Technical or Common Sense
- 13. Gibt es ein Klickverhalten für eine Liste?
- 14. Gibt es einen eleganteren Weg herauszufinden, ob eine Liste Elemente enthält, die nicht gezählt werden sollen?
- 15. Gibt es eine Grenze für die Größe einer Datei, wenn ein Download mit PHP ausgelöst wird?
- 16. Die Elemente in einer Liste in R
- 17. Gibt es eine Grenze für die Anzahl der Zeilen, die in einen einzelnen css-Befehl eingegeben werden können?
- 18. Warum gibt es keine Grenze?
- 19. Ist es möglich, mehrere String.Split Intersection als eine Zeichenfolge zu verwenden, die ausgeführt und in einer Liste gespeichert werden konnte
- 20. Gibt es eine bessere Möglichkeit, mehrere Elemente in einer Python-Liste zu kombinieren
- 21. Gibt es eine Grenze für das Hinzufügen von Bildern in einer einzigen Android-Aktivität?
- 22. Gibt es eine Grenze für die Nachrichtengröße in MPI mit boost :: mpi?
- 23. Redis: Gibt es eine Grenze für die Anzahl der Schlüssel, die ich speichern kann?
- 24. Gibt es eine empfohlene Anzahl von Dateien/Bildern, die in einem Android-Projekt gespeichert werden sollen?
- 25. Gibt es eine Grenze für die Pull-Nummer in Docker Hub
- 26. Gibt es eine Grenze für die Länge von _id in mongodb
- 27. Gibt es eine Grenze für die String-Größe in einem Java-Programm?
- 28. Gibt es eine Grenze für die Anzahl der Artikel in HTML-Form gesendet?
- 29. Gibt es eine Grenze für die Anzahl der verschiedenen Marker, die Sie in einer Fusionsebene haben können?
- 30. Wie werden NULL in einer Datenbank gespeichert?
* Theoretisch * bedeutet, dass Sie nur zufällig auf Elemente bis zu "Int32.MaxValue" zugreifen können, nicht wie viele Elemente es gibt, * theoretisch * natürlich. –
@Martinho: Nun, die aktuelle Implementierung verwendet 'Int32' * überall *, also ist es nicht nur wahlfreier Zugriff, der auf 2^31 Elemente beschränkt ist. (Natürlich ist die Verwendung von 'Int32' intern nur ein Implementierungsdetail, aber Eigenschaften wie der Indexer und' Count' sind Teil des öffentlichen Auftrags.) – LukeH