Frage

Ich war über ein Gespräch mit einem Kollegen mit, ob es besser ist, einen Wörterbuch zu verwenden und neu zu besiedeln, wenn es eine Ergebnismenge Änderungen oder nur Gebrauch Linq Schleife über alle Elemente in der Liste jedes Mal.

Wir versuchen, eine Eltern / Kind-Beziehung zu kartieren, und ich schlug vor, die ParentID als Wörterbuch-Taste, und der Wörterbuch Wert als benutzerdefiniertes Objekt.

Wir werden in der Regel zu iterieren über alle Eltern / Kinder mehr brauchen und die Liste heruntergekommen.

Gibt es einen Grund, warum Sie nicht einen Wörterbuch in diesem Umstand nutzen? wenn ja, was würden Sie stattdessen

War es hilfreich?

Lösung

Wenn Sie wirklich brauchen, um Iterierte über die ganze Sammlung zu tun, jedes Mal, würde es nicht viel sein (falls vorhanden) Nutzen für eine Dictionary hat. Auf der anderen Seite, wenn Sie gelegentlich bestimmte Fälle durch ihre Schlüssel finden müssen, könnte Dictionary sein, was Sie brauchen.

Beachten Sie, dass selbst wenn Sie ein Wörterbuch verwenden, können Sie nach wie vor nur eine Iteration durch die Liste der Werte, wenn nötig, für nicht zu viel mehr ‚Gewicht‘ als Iterieren durch einen normalen List, aber dann würden Sie noch die Wörterbuch haben Fähigkeiten, wenn nötig.

Andere Tipps

Performance weise, es wird wirklich auf Ihre speziellen Anwendung ab, so dass Sie zu Test haben werden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top