Slices
Slices ähneln Arrays, aber sie besitzen dynamische Längen, was sie zu einer flexibleren Alternative zu Arrays macht.
Um ein Slice zu erstellen, verwenden wir die gleiche Syntax wie für Arrays, aber in diesem Fall geben wir die Größe nicht an.
Erstellen eines Slices mit dem var
Schlüsselwort:
// Creates an empty slice with no elements
var sliceName [] dataType
// Creates a slice with the specified elements
var sliceName = [] dataType {element_1, element_2, ...}
Erstellen eines Slices mit dem :=
Operator:
// Creates a slice with the specified elements
sliceName := [] dataType { element_1, element_2, ... }
Wir können zusätzliche Elemente zu einem Slice mit der append
Funktion hinzufügen. Die append
Funktion gibt ein neues Slice mit den angehängten Elementen zurück, das wir dann in der ursprünglichen Slice-Variable speichern können. Dies wird mit einem Beispiel deutlicher. Die grundlegende Syntax der append
Funktion ist wie folgt:
append(originalSlice, newElement1, newElement2, …)
Der folgende Code demonstriert die Verwendung der append
Funktion:
index.go
1234randomNumbers := [] int { 1, 4, 5} fmt.Println(randomNumbers) // Output: [1 4 5] randomNumbers = append(randomNumbers, 7, 9) fmt.Println(randomNumbers) // Output: [1 4 5 7 9]
Auf die gleiche Weise, wie wir auf Elemente innerhalb eines Arrays zugreifen können, können wir auch Teile eines Arrays mit der folgenden Syntax referenzieren:
index.go
1arrayName[startIndex:endIndex + 1]
Es werden alle Elemente vom startingIndex
bis zum endingIndex
extrahiert. Bitte beachten Sie, dass wir endingIndex + 1
angeben müssen. Dies wird mit einem Beispiel deutlicher. Zum Beispiel:
index.go
12var numbers = [10] int { 2, 4, 6, 9, 10, 12, 14, 16, 17, 19 } fmt.Println(numbers[4:9]) // Output: [10 12 14 16 17]
Es extrahiert die Elemente von den Indizes 4
bis 9
, einschließlich des Elements bei Index 4
und ausschließlich des Elements bei Index 9
, wie im Syntax ausgedrückt:
index.go
1arrayName[startingIndex:endingIndex + 1]
Wir können diesen extrahierten Teil des Arrays auch in einer Variablen speichern und so einen Slice erstellen:
index.go
123var numbers = [10] int { 2, 4, 6, 9, 10, 12, 14, 16, 17, 19 } numbersPart := numbers[2:7] fmt.Println(numbersPart) // Output: [6 9 10 12 14]
Es ist wichtig zu beachten, dass ein solcher Slice auf den Teil des Arrays verweist, aus dem er erstellt wurde. Folglich wirken sich alle Änderungen, die in diesem Slice vorgenommen werden, auch auf das ursprüngliche Array aus:
index.go
12345678910111213package main import "fmt" func main() { var pin = [4] int { 1, 2, 3, 4 } part := pin[1:3] fmt.Println(pin) // Output [1, 2, 3, 4] fmt.Println(part) // Output: [2, 3] part[0] *= 2 part[1] *= 3 fmt.Println(part) // Output [4, 9] fmt.Println(pin) // Output [1, 4, 9, 4] }
Danke für Ihr Feedback!
Fragen Sie AI
Fragen Sie AI
Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen
Awesome!
Completion rate improved to 1.96
Slices
Swipe um das Menü anzuzeigen
Slices ähneln Arrays, aber sie besitzen dynamische Längen, was sie zu einer flexibleren Alternative zu Arrays macht.
Um ein Slice zu erstellen, verwenden wir die gleiche Syntax wie für Arrays, aber in diesem Fall geben wir die Größe nicht an.
Erstellen eines Slices mit dem var
Schlüsselwort:
// Creates an empty slice with no elements
var sliceName [] dataType
// Creates a slice with the specified elements
var sliceName = [] dataType {element_1, element_2, ...}
Erstellen eines Slices mit dem :=
Operator:
// Creates a slice with the specified elements
sliceName := [] dataType { element_1, element_2, ... }
Wir können zusätzliche Elemente zu einem Slice mit der append
Funktion hinzufügen. Die append
Funktion gibt ein neues Slice mit den angehängten Elementen zurück, das wir dann in der ursprünglichen Slice-Variable speichern können. Dies wird mit einem Beispiel deutlicher. Die grundlegende Syntax der append
Funktion ist wie folgt:
append(originalSlice, newElement1, newElement2, …)
Der folgende Code demonstriert die Verwendung der append
Funktion:
index.go
1234randomNumbers := [] int { 1, 4, 5} fmt.Println(randomNumbers) // Output: [1 4 5] randomNumbers = append(randomNumbers, 7, 9) fmt.Println(randomNumbers) // Output: [1 4 5 7 9]
Auf die gleiche Weise, wie wir auf Elemente innerhalb eines Arrays zugreifen können, können wir auch Teile eines Arrays mit der folgenden Syntax referenzieren:
index.go
1arrayName[startIndex:endIndex + 1]
Es werden alle Elemente vom startingIndex
bis zum endingIndex
extrahiert. Bitte beachten Sie, dass wir endingIndex + 1
angeben müssen. Dies wird mit einem Beispiel deutlicher. Zum Beispiel:
index.go
12var numbers = [10] int { 2, 4, 6, 9, 10, 12, 14, 16, 17, 19 } fmt.Println(numbers[4:9]) // Output: [10 12 14 16 17]
Es extrahiert die Elemente von den Indizes 4
bis 9
, einschließlich des Elements bei Index 4
und ausschließlich des Elements bei Index 9
, wie im Syntax ausgedrückt:
index.go
1arrayName[startingIndex:endingIndex + 1]
Wir können diesen extrahierten Teil des Arrays auch in einer Variablen speichern und so einen Slice erstellen:
index.go
123var numbers = [10] int { 2, 4, 6, 9, 10, 12, 14, 16, 17, 19 } numbersPart := numbers[2:7] fmt.Println(numbersPart) // Output: [6 9 10 12 14]
Es ist wichtig zu beachten, dass ein solcher Slice auf den Teil des Arrays verweist, aus dem er erstellt wurde. Folglich wirken sich alle Änderungen, die in diesem Slice vorgenommen werden, auch auf das ursprüngliche Array aus:
index.go
12345678910111213package main import "fmt" func main() { var pin = [4] int { 1, 2, 3, 4 } part := pin[1:3] fmt.Println(pin) // Output [1, 2, 3, 4] fmt.Println(part) // Output: [2, 3] part[0] *= 2 part[1] *= 3 fmt.Println(part) // Output [4, 9] fmt.Println(pin) // Output [1, 4, 9, 4] }
Danke für Ihr Feedback!