Heim > Backend-Entwicklung > C++ > Wie kann ich mehrere Wörterbücher in C# effizient zusammenführen?

Wie kann ich mehrere Wörterbücher in C# effizient zusammenführen?

Susan Sarandon
Freigeben: 2025-01-25 22:36:16
Original
950 Leute haben es durchsucht

How Can I Efficiently Merge Multiple Dictionaries in C#?

Fusionieren Sie mehrere Wörterbücher effizient in C#

Wenn Sie mit mehreren Wörterbüchern in C#arbeiten, kann es eine gemeinsame Aufgabe sein. Hier ist eine robuste und effiziente Methode, um dies zu erreichen:

public static Dictionary<TKey, TValue> Merge<TKey, TValue>(IEnumerable<Dictionary<TKey, TValue>> dictionaries)
{
    return dictionaries.SelectMany(dict => dict).ToDictionary(pair => pair.Key, pair => pair.Value);
}
Nach dem Login kopieren

Diese Erweiterungsmethode enthält eine aufzählbare Sammlung von Wörterbüchern als Argument und flacht sie in ein einzelnes Wörterbuch aus, indem sie alle Schlüsselwerte aus jedem Wörterbuch mit SelectMany auswählt . Anschließend konvertiert das Ergebnis in ein neues Wörterbuch, das unter Verwendung der Tasten und Werte aus den abgeflachten Paaren verwendet wird. In .NET -Versionen vor 8 wird eine Ausnahme ausgelöst. In .NET 8 und später ignoriert die neu definierte Überlastung von Kleinkindern doppelte Schlüssel. Wenn Sie dies in ein Wörterbuch mit einzigartigen Schlüssel konvertieren, erfordert jedoch zusätzliche Schritte, wie aus dem angegebenen Referenzcode gezeigt. SelectMany -Operator, um die Wörterbücher abzuflachen und eine neue effizient zu erstellen.

Das obige ist der detaillierte Inhalt vonWie kann ich mehrere Wörterbücher in C# effizient zusammenführen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage