Zum Hauptinhalt springen
Veröffentlicht am

Dictionaries in C#

Teilen:

Einführung

In der Welt der Programmierung stoßen wir häufig auf Situationen, in denen es notwendig ist, Daten strukturiert zu speichern. Genau hier kommen Dictionaries in C# ins Spiel und bieten eine effiziente Möglichkeit, Daten zu speichern und abzurufen.

Was sind Dictionaries?

Dictionaries, auch bekannt als Maps oder Hash-Tabellen in anderen Sprachen, sind Sammlungen, die Schlüssel-Wert-Paare speichern. Jeder Schlüssel ist eindeutig und verweist auf einen bestimmten Wert.

Eigenschaften von Dictionaries

  1. Eindeutiger Schlüssel: Jeder Wert innerhalb eines Dictionarys besitzt einen eindeutigen Schlüssel.
  2. Reihenfolge: Dictionaries in C# garantieren keine bestimmte Reihenfolge der Elemente.
  3. Hohe Effizienz: Das Abrufen von Werten über den Schlüssel ist extrem schnell.
  4. Typenflexibilität: Sowohl der Schlüssel als auch der Wert können von beliebigem Typ sein – von primitiven Typen bis hin zu benutzerdefinierten Objekten.

Häufige Methoden und Eigenschaften

  • Add(key, value): Fügt ein neues Schlüssel-Wert-Paar hinzu.
  • ContainsKey(key): Prüft, ob ein bestimmter Schlüssel vorhanden ist.
  • ContainsValue(value): Prüft, ob ein bestimmter Wert vorhanden ist.
  • TryGetValue(key, out value): Versucht, einen Wert anhand des angegebenen Schlüssels abzurufen.
  • Clear(): Entfernt alle Elemente aus dem Dictionary.
  • Count: Gibt die Anzahl der Schlüssel-Wert-Paare im Dictionary zurück.

Mit Dictionaries in C# arbeiten

using System;
using System.Collections.Generic;

namespace Base {
  class Woerterbuecher {
    public void Run() {
      Dictionary<string, int> personen = new Dictionary<string, int>() {
        { "Nelson Silva", 28 },
        { "Larissa Fernandes", 37 }
      };

      personen.Add("Pedro Henrique", 52);
      personen.Add("Raquel Soares", 68);
      personen["Pedro Henrique"] = 100;
      personen.Remove("Larissa Fernandes");

      Console.WriteLine($"Anzahl der Personen: {personen.Count}\n");

      foreach (KeyValuePair<string, int> person in personen) {
        Console.WriteLine($"Name: {person.Key}");
        Console.WriteLine($"Alter: {person.Value}\n");
      }
    }
  }
}

Praxisbeispiel: Anwendungseinstellungen speichern

Stell dir vor, du entwickelst eine Anwendung und musst Benutzereinstellungen wie Lautstärke, Helligkeit und bevorzugte Sprache speichern. Ein Dictionary wäre dafür ideal!

Dictionary<string, object> einstellungen = new Dictionary<string, object>() {
  { "Lautstärke", 80 },
  { "Helligkeit", 50 },
  { "Sprache", "DE" }
};

Mit diesem Dictionary kannst du die Einstellungen nach Bedarf problemlos abrufen und ändern.

Fazit

Dictionaries in C# sind ein äußerst leistungsstarkes und vielseitiges Werkzeug. Ob zum Speichern von Einstellungen, zum Verknüpfen von Daten oder zur Verwaltung komplexer Sammlungen – Dictionaries sind immer eine ausgezeichnete Wahl. Mach dich mit ihnen vertraut und du wirst sehen, welche Effizienz und Klarheit sie in deinen Code bringen können.

Happy coding!