Konvertieren das Dictionary in eine Listensammlung in C#
In C# kann ein Dictionary mit der Methode ToList()
als Teil der System.Linq
-Erweiterungen in eine Liste umgewandelt werden. Ein Dictionary kann nicht direkt in eine List<string>
konvertiert werden, da der Rückgabetyp des Dictionarys KeyCollection
ist.
Die Liste ähnelt einer ArrayList, der einzige Unterschied besteht darin, dass die Liste generisch ist und eindeutige Eigenschaften hat.
In diesem Tutorial erfahren Sie, wie Sie ein Dictionary in eine Listensammlung in C# konvertieren.
Verwenden Sie die Methode ToList()
, um das Dictionary in eine Listensammlung in C#
zu konvertieren
Ein Dictionary in C# akzeptiert zwei Argumente, das erste ist der Schlüssel und das zweite der Wert. Das Dictionary ist nützlich, wenn Sie verschiedene Daten und ihre Werte zu einer Liste hinzufügen.
Um Dictionarywerte in eine Listensammlung umzuwandeln, können wir diese generische Liste mit ihrer eingebauten ToList()
-Methode konvertieren. Sowohl Listen als auch Wörterbücher speichern Datensammlungen und sind ähnlich; beides sind Random-Access-Datenstrukturen des .NET
-Frameworks.
Das Dictionary basiert auf einer Hash-Tabelle, einem effizienten Algorithmus zum Nachschlagen von Dingen. Andererseits geht eine Liste Element für Element, bis sie jedes Mal das Ergebnis von Anfang bis zum Ergebnis findet.
Mit den Namespaces System.Collections.Generic
und System.Linq
lässt sich ein Dictionary in C# ganz einfach in eine Listensammlung umwandeln. Rufen Sie ToList()
für eine Dictionarysammlung auf und erhalten Sie eine Liste von KeyValuePair
-Instanzen.
// add `System.Collections.Generic` and `System.Linq` namespaces
using System;
using System.Collections.Generic;
using System.Linq;
class ConDtoLCol {
static void Main() {
// create a Dictionary
Dictionary<string, int> dict = new Dictionary<string, int>();
dict["cat"] = 1;
dict["dog"] = 4;
dict["mouse"] = 2;
dict["rabbit"] = -1;
// call ToList to convert the `dict` Dictionary to List
List<KeyValuePair<string, int>> list = dict.ToList();
// loop over List to show successful conversion
foreach (KeyValuePair<string, int> pair in list) {
Console.WriteLine(pair.Key);
Console.WriteLine(" {0}", pair.Value);
}
}
}
Ausgabe:
cat
1
dog
4
mouse
2
rabbit
-1
Wenn Sie die Schlüssel eines Dictionarys in eine Listensammlung in C# konvertieren möchten, können Sie Folgendes verwenden:
List<string> listNumber = dicNumber.Keys.ToList();
Um Werte eines Dictionarys in eine Listensammlung in C# zu konvertieren, können Sie außerdem Folgendes verwenden:
List<string> listNumber = dicNumber.Values.ToList();
Das Framework-Dictionary .NET
repräsentiert eine Sammlung von Schlüsseln und Werten. Der Hauptzweck von Dictionaryschlüsseln besteht darin, Benutzern das Abrufen einer generischen Liste (Sammlung) der Dictionarywerte zu ermöglichen.
Darüber hinaus können Sie die Eigenschaft values
verwenden, um diese generische Liste von Dictionarywerten zu erhalten. In diesem Artikel haben Sie die effizienteste Methode zum Konvertieren von Schlüsseln und Werten eines Dictionarys in eine Liste in C# kennengelernt.
Hassan is a Software Engineer with a well-developed set of programming skills. He uses his knowledge and writing capabilities to produce interesting-to-read technical articles.
GitHubVerwandter Artikel - Csharp Dictionary
- Beste Möglichkeit, über ein Dictionary zu iterieren
- Liste in C# in Wörterbuch umwandeln
- Sortieren Sie ein Wörterbuch nach seinen Schlüsseln in C#
- Dictionary vs Hashtable in C#
- Konvertieren ein Dictionary in eine JSON-Zeichenfolge in C#