Heim >Backend-Entwicklung >C++ >Wie kann ich einen Wörterbuchschlüssel aus seinem Wert in C# abrufen?

Wie kann ich einen Wörterbuchschlüssel aus seinem Wert in C# abrufen?

Barbara Streisand
Barbara StreisandOriginal
2024-12-29 00:41:10390Durchsuche

How Can I Retrieve a Dictionary Key from Its Value in C#?

Wörterbuchschlüssel aus seinem Wert abrufen

In C# kann die Erkennung des Schlüssels, der einem Wert in einem Wörterbuch entspricht, durch einige Methoden erreicht werden . Die natürliche Einzigartigkeit von Schlüsseln innerhalb eines Wörterbuchs schließt das direkte Abrufen von Schlüsseln nach Wert aus.

Verwendung von FirstOrDefault()

Da Wörterbuchwerte nicht von Natur aus eindeutig sind, ist ein Suchvorgang erforderlich ist notwendig, um den gewünschten Schlüssel zu finden. Durch die Verwendung von FirstOrDefault() können wir nach dem Schlüssel-Wert-Paar suchen, bei dem der Wert mit der Eingabe übereinstimmt, und seinen Schlüssel zurückgeben:

var myKey = types.FirstOrDefault(x => x.Value == "one").Key;

Erstellen eines inversen Wörterbuchs

Eine alternative Lösung, die für Fälle geeignet ist, in denen Werte eindeutig sind und selten eingefügt werden, besteht darin, ein inverses Wörterbuch zu erstellen. Bei diesem Ansatz dienen Werte als Schlüssel und Schlüssel als Werte:

var inverseTypes = types.ToDictionary(x => x.Value, x => x.Key);
var myKey = inverseTypes["one"];

HashTable oder SortedLists bieten zwar alternative Datenstrukturen, bieten jedoch normalerweise keine native Lösung zum Abrufen von Schlüsseln nach Wert. Die oben genannten Ansätze bleiben für die meisten Szenarien effektiv und effizient.

Das obige ist der detaillierte Inhalt vonWie kann ich einen Wörterbuchschlüssel aus seinem Wert in C# abrufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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