Slicing von bestehenden Slices/Arrays
Teil des Abschnitts Grundlagen der GO-Journey von Coddy — Lektion 80 von 109.
Sie können einen neuen Slice aus einem bestehenden Slice oder Array erstellen, indem Sie einen Bereich mit der [start:end] Syntax angeben.
Erstellen Sie einen Slice von Zahlen:
numbers := []int{10, 20, 30, 40, 50}
fmt.Println("Original:", numbers)Extrahiere Elemente von Index 1 bis 3 (exklusive 3):
slice1 := numbers[1:3]
fmt.Println("Slice [1:3]:", slice1)Ergebnis:
Original: [10 20 30 40 50]
Slice [1:3]: [20 30]Sie können auch den Start- oder Endindex weglassen:
slice2 := numbers[:2] // Vom Start bis Index 2 (exklusive 2)
slice3 := numbers[3:] // Von Index 3 bis zum Ende
fmt.Println("Slice [:2]:", slice2)
fmt.Println("Slice [3:]:", slice3)Ergebnis:
Slice [:2]: [10 20]
Slice [3:]: [40 50]Aufgabe
AnfängerIn dieser Herausforderung wirst du das Slicen eines bestehenden Slices üben, um neue Sub-Slices zu erstellen. Du hast einen Slice mit Früchten und musst daraus zwei neue Slices erstellen:
- Ein Slice, der nur die ersten drei Früchte enthält
- Ein Slice, der nur die letzten zwei Früchte enthält
Gib anschließend beide neuen Slices aus, um deine Arbeit zu überprüfen.
Probier es selbst
package main
import "fmt"
func main() {
// Hier ist unser ursprünglicher Slice mit Früchten
fruits := []string{"apple", "banana", "orange", "grape", "kiwi"}
// TODO: Erstelle einen neuen Slice namens 'firstThree', der nur die ersten drei Früchte enthält
// TODO: Erstelle einen neuen Slice namens 'lastTwo', der nur die letzten zwei Früchte enthält
// Ergebnisse ausgeben
fmt.Println("First three fruits:", firstThree)
fmt.Println("Last two fruits:", lastTwo)
}Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Grundlagen
4Vergleichs- & logische Operatoren
Vergleichsoperatoren - Teil 1Vergleichsoperatoren - Teil 2Logischer UND-OperatorLogischer ODER-OperatorLogischer NICHT-OperatorGrundlagen der OperatorrangfolgeZusammenfassung - Vergleiche anstellen7Kontrollfluss: Schleifen
Die `for`-Schleife erklärtfor-Schleife - Grundlagenfor-Schleife - Nur BedingungDas `break`-SchlüsselwortDas `continue`-SchlüsselwortVerschachtelte SchleifenZusammenfassung - Aktionen wiederholen2Variablen und grundlegende Datentypen
Was ist eine VariableTypinferenz mit `:=`Ganzzahlen (int)GleitkommazahlenBoolesche WerteStringsZero ValuesKonstantenNamenskonventionenZusammenfassung - Variablen und Typen5Grundlagen der Ein- und Ausgabe
Formatierte AusgabeFormat-VerbenTypen ausgebenEinfache Benutzereingaben erhaltenZusammenfassung – Ein- und Ausgabe8Funktionen
Funktionen verstehenEine Funktion deklarierenFunktionen aufrufenFunktionsparameterEinen einzelnen Wert zurückgebenMehrere Werte zurückgebenBenannte RückgabewerteGrundlagen des Funktions-ScopesZusammenfassung – Wiederverwendbaren Code erstellen11Zusammengesetzte Typen: Slices
Einführung in SlicesDeklaration von Slice-LiteralenSlices mit `make` erstellenSlice-Länge vs. KapazitätZugriff auf Slice-ElementeElemente anhängenSlicing von bestehenden Slices/ArraysIterieren über SlicesKopieren von SlicesZusammenfassung – Dynamische Listen3Grundlegende Operatoren
Arithmetische OperatorenDivisionsoperatorDer Modulo-OperatorZuweisungsoperatorKombinierte ZuweisungsoperatorenInkrement und DekrementZusammenfassung - Berechnungen6Kontrollfluss: Bedingte Anweisungen
Die `if`-AnweisungDas `else`-SchlüsselwortDas `else if`-SchlüsselwortVariable Shadowing in `if`Variablen initialisierenDie `switch`-AnweisungSwitch mit AusdrückenSwitch ohne AusdruckDas `fallthrough`-SchlüsselwortZusammenfassung – Entscheidungen treffen9Zeiger
Was ist ein Zeiger?Deklarieren von ZeigervariablenDer AdressoperatorDereferenzieren von ZeigernVerwendung von Zeigern in FunktionenNil-ZeigerZusammenfassung – Zeiger verstehen12Zusammengesetzte Typen: Maps
Einführung in MapsDeklarieren von Map-LiteralenErstellen von Maps mit `make`Hinzufügen und Aktualisieren von Key-Value-PaarenZugriff auf Map-WerteÜberprüfen der Existenz von SchlüsselnLöschen von Map-EinträgenMap-LängeIterieren über MapsZusammenfassung – Key-Value-Speicher