1.5 KiB
1.5 KiB
Go 02: Slices, Arrays & Maps ⚡
Willkommen zu Modul 02 des Go (Golang) Kurses!
In diesem Modul meisterst du die grundlegenden Sammlungs-Datentypen in Go: Arrays fester Größe, dynamische Slices (make, append, Reslicing) und Assoziative Maps (delete, Comma-OK Idiom).
💡 1. Das Wichtigste in Kürze
Array vs. Slice
- Array (
[5]int): Feste Länge zur Compile-Zeit. Werttyp: Übergabe an Funktionen kopiert das gesamte Array. - Slice (
[]int): Dynamischer View auf ein Underlyings Array. Enthält Pointer, Länge (len) und Kapazität (cap). make([]T, len, cap): Erstellt ein Slice mit vorallokiertem Speicher, um wiederholte Speicher-Reallokationen bei vielenappend-Aufrufen zu vermeiden.
Slicing Syntax
s[start:ende]: Elemente von Indexstartbisende-1.s[:ende]: Ab Beginn bisende-1.s[start:]: Ab Indexstartbis zum Ende.
Maps in Go
Maps bilden Schlüssel eindeutig auf Werte ab:
m := make(map[string]int)
m["cpu"] = 4
delete(m, "cpu") // Entfernt den Schlüssel
// Comma-OK Idiom:
wert, existiert := m["ram"]
if !existiert {
// Schlüssel fehlt
}
🎯 Teilziele in aufgabe.go
- TODO 1:
FiltereGeradeZahlen(zahlen []int) []intimplementieren. - TODO 2:
ErweitereProtokolle(logs []string, neueEintraege ...string) []stringumsetzen. - TODO 3:
ZaehleWortHaeufigkeit(text string) map[string]intschreiben. - TODO 4:
SichereBenutzerAbfrageundLoescheBenutzermit Comma-OK Idiom implementieren.