Heim > Artikel > Backend-Entwicklung > Lassen Sie uns über die Verwendung der Golang-Slicing-Methode sprechen
Slices in der Go-Sprache (Golang) sind dynamische Arrays, die automatisch wachsen und schrumpfen können. Ein Slice ist eine Struktur, die einen Zeiger auf das zugrunde liegende Array, die Anzahl der Elemente und die Kapazität kapselt.
Da die Implementierung des Slicings auf dem zugrunde liegenden Array basiert, unterliegen die Slicing-Vorgänge weitgehend dem zugrunde liegenden Array. In diesem Artikel besprechen wir einige gängige Slicing-Methoden und deren Verwendung.
Zuerst müssen wir ein Slice erstellen. Es gibt zwei Möglichkeiten, Slices zu erstellen: mit der Make-Funktion und direkter Deklaration.
Verwenden Sie die Make-Funktion:
a := make([]int, 5) //Erstellen Sie ein ganzzahliges Slice der Länge 5
Die Make-Funktion akzeptiert zwei Parameter: Der erste Parameter ist der Typ des Slice-Elements und Der zweite Parameter ist der Typ des Slice-Elements. Die beiden Parameter sind die Länge des Slice. Wenn Sie die Kapazität angeben möchten, können Sie den dritten Parameter übergeben:
b := make([]string, 5, 10) //Erstellen Sie ein String-Slice mit einer Länge von 5 und einer Kapazität von 10
Direkt deklarieren :
c := []int{1, 2, 3, 4, 5} //Erstelle ein ganzzahliges Slice mit 5 Elementen
Beachten Sie, dass die Länge und Kapazität des auf diese Weise erstellten Slice gleich sind.
Der Zugriff auf Slice-Elemente über den Index ist derselbe wie für Arrays. Um beispielsweise auf das erste Element zuzugreifen, können Sie folgendermaßen vorgehen:
fmt.Println(c[0])
Da Slices veränderbar sind, können wir die darin enthaltenen Elemente anhand des Indexwerts ändern :
c[0] = 10 //Ändern Sie das erste Element in 10
Verwenden Sie die Append-Methode des Slice, um Elemente zum Slice hinzuzufügen. Wenn die Slice-Kapazität nicht groß genug ist, um alle Elemente aufzunehmen, wird sie automatisch erweitert.
Zum Beispiel können wir mit der folgenden Methode Elemente am Ende des Slice hinzufügen:
c = append(c, 6, 7, 8) //3 Elemente am Ende des Slice hinzufügen
Beim Hinzufügen von a einzelnes Element, wir können dies tun Schreiben Sie:
c = append(c, 9) //Ein Element am Ende des Slice hinzufügen
Das Slice kann mit der Kopierfunktion kopiert werden. Der erste Parameter der Kopierfunktion ist das Ziel-Slice und der zweite Parameter ist das Quell-Slice.
Zum Beispiel:
d := make([]int, len(c))
copy(d, c)
Verwenden Sie die [Start:End]-Form von Slices, um Slices abzufangen und bekomme ein neues Stück. start stellt die Startposition (geschlossenes Intervall) dar, die abgefangen werden soll, und end stellt die Endposition (offenes Intervall) dar.
Zum Beispiel:
e := c[2:5] //Abfangen des Slice, das das dritte bis fünfte Element enthält
Wenn start weggelassen wird, wird standardmäßig 0 verwendet. Wenn end weggelassen wird, wird standardmäßig die Länge von verwendet die Scheibe.
Es gibt keine direkte Möglichkeit, Slice-Elemente in Go zu löschen. Wir können Elemente jedoch indirekt löschen, indem wir ein neues Slice erstellen.
Zum Beispiel können wir den folgenden Code verwenden, um das dritte Element zu löschen:
f := append(c[:2], c[3:]...)
Auf diese Weise ist f ein neues Slice wo die drei Elemente entfernt wurden.
Zusammenfassung
Slicing ist ein sehr leistungsfähiger Datentyp, der uns dabei helfen kann, Daten bequemer zu verwalten. In diesem Artikel stellen wir einige gängige Slice-Operationsmethoden vor, darunter Erstellung, Zugriff, Änderung, Anhängen, Kopieren, Abfangen und Löschen. Wenn Sie das Slicing in der Go-Sprache beherrschen möchten, können Sie Ihr Verständnis vertiefen, indem Sie die offizielle Dokumentation lesen.
Das obige ist der detaillierte Inhalt vonLassen Sie uns über die Verwendung der Golang-Slicing-Methode sprechen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!