Konvertieren das Dictionary in eine Listensammlung in C#

Syed Hassan Sabeeh Kazmi 12 Oktober 2023
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.

Syed Hassan Sabeeh Kazmi avatar Syed Hassan Sabeeh Kazmi avatar

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.

GitHub

Verwandter Artikel - Csharp Dictionary

Verwandter Artikel - Csharp List