Zum Hauptinhalt springen
Veröffentlicht am

Wörterbücher (Map) in Go

Teilen:

Einführung

Go, auch bekannt als Golang, ist eine hocheffiziente Systemprogrammiersprache. Eines ihrer wichtigsten Elemente sind Wörterbücher, die durch die Struktur map repräsentiert werden. Diese Struktur ermöglicht das Erstellen assoziativer Mengen aus Schlüsseln und Werten und erleichtert die Speicherung und den Abruf von Informationen.

Der Ursprung der Wörterbücher

Bevor wir auf die Details der Implementierung in Go eingehen, ist es wichtig, das Konzept von Wörterbüchern (oder Maps) in der Informatik zu verstehen. Aus Hash-Tabellen-Datenstrukturen hervorgegangen, bieten Wörterbücher eine Möglichkeit, eindeutige Werte (Schlüssel) mit anderen Werten zu verknüpfen und so einen nahezu sofortigen Abruf zu ermöglichen.

Struktur und Typ

In Go ist eine Map eine Referenz auf eine Hash-Tabelle und ist von Natur aus eine Referenz. Das bedeutet: Weist man eine Map einer neuen Variable zu, verweisen beide auf dieselbe zugrundeliegende Struktur.

meineMap := map[string]int{
  "eins": 1,
  "zwei": 2,
}

andereMap := meineMap
andereMap["eins"] = 42
fmt.Println(meineMap["eins"]) // 42

Wörterbücher Manipulieren

Größe des Wörterbuchs

Mit der Funktion len lässt sich die Anzahl der Schlüssel-Wert-Paare in einem Wörterbuch ermitteln:

fmt.Println(len(meineMap))  // 2

Existenzprüfung

Versucht man, auf einen Wert in einem Wörterbuch über einen nicht vorhandenen Schlüssel zuzugreifen, gibt Go den Nullwert für den Werttyp des Wörterbuchs zurück. Doch wie lässt sich feststellen, ob der Schlüssel vorhanden war? Go bietet dafür einen eleganten Ansatz:

wert, existiert := meineMap["drei"]

if existiert {
  fmt.Println("Existiert:", wert)
} else {
  fmt.Println("Existiert nicht!")
}

Mit Slices und Wörterbüchern Arbeiten

Es ist üblich, Slices und Wörterbücher zu kombinieren, um komplexere Datenstrukturen zu erstellen. Zum Beispiel kann man einen Slice von Wörterbüchern haben:

var sliceVonMaps []map[string]int

Wörterbücher in der Praxis

In der realen Entwicklung werden Wörterbücher häufig verwendet, um Vorkommen zu zählen, nach Attributen zu gruppieren, Konfigurationen zu speichern und vieles mehr. Ihre Vielseitigkeit und Effizienz machen sie zu einem unverzichtbaren Werkzeug für jeden Go-Entwickler.

Fazit

Die Struktur map in Go ist mehr als nur eine Sammlung von Schlüssel-Wert-Paaren. Sie ist eine Verkörperung der kraftvollen Verbindung aus Berechnungstheorie, Sprachdesign und Programmierpaxis. Mit einem tiefgehenden Verständnis der Wörterbücher in Go bist du bereit, komplexere Programmierherausforderungen zu meistern und effizientere Anwendungen zu entwickeln.

Happy coding!