Golang-Array löschen

WBOY
Freigeben: 2023-05-16 11:03:07
Original
714 Leute haben es durchsucht

Das Array in Golang ist eine geordnete Datenstruktur. Seine Länge ist fest. Einmal erstellt, kann seine Länge nicht geändert werden. Daher ist das Löschen von Array-Elementen in Golang nicht so flexibel wie das Schneiden.

Also, wie lösche ich Elemente in einem Array in Golang? Zunächst müssen Sie die grundlegenden Operationen von Arrays in Golang verstehen.

1. Array-Definition

In Golang können Sie ein Array auf folgende Weise definieren:

var arr [5]int

Auf diese Weise wird ein int-Array mit einer Länge von 5 definiert. Array-Elemente können auf folgende Weise initialisiert werden:

arr := [5]int{1, 2, 3, 4, 5}

2. Das Durchlaufen von Arrays in Golang kann eine for-Schleife verwenden Beispiel ist wie folgt:

for i:=0; i

fmt.Println(arr[i])
Nach dem Login kopieren

Sie können auch das Schlüsselwort range wie folgt verwenden:

for index, value : = range arr {

fmt.Println(index, value)
Nach dem Login kopieren

3. Ermitteln der Array-Länge

In Golang können Sie die Länge des Arrays über die Funktion len() ermitteln:

length := len( arr)

Jetzt schauen wir uns an, wie man Elemente im Array löscht.

1. Array-Elemente auf Standardwerte setzen

In Golang können Array-Elemente auf Standardwerte gesetzt werden. Der Anfangswert wird basierend auf dem Typ bestimmt. Wenn Sie also ein Element aus einem Array löschen möchten, müssen Sie nur das entsprechende Element auf seinen Standardwert setzen. Löschen Sie beispielsweise das dritte Element. Das Codebeispiel lautet wie folgt:

var arr [5]int = [5]int{1, 2, 3, 4, 5}

arr[2] = 0

for _, Wert: = Bereich arr {

fmt.Println(value)
Nach dem Login kopieren
Nach dem Login kopieren

}

Auf diese Weise wird das dritte Element gelöscht, sein Wert ist 0 und das Ausgabeergebnis ist: 1 2 0 4 5.

Allerdings gibt es bei dieser Methode ein Problem, das heißt, dass nach dem Löschen ein Standardwert im Array verbleibt. Wenn es sich bei den Elementen im Array um Zeichenfolgen oder benutzerdefinierte Typen handelt, entsprechen ihre Standardwerte möglicherweise nicht Ihren Wünschen.

2. Verwenden Sie Slicing, um das Löschen zu erreichen.

Slicing in Golang ist eine leistungsstarke Datenstruktur, mit der Elemente einfach gelöscht werden können, ohne die Länge des ursprünglichen Arrays zu ändern. Daher können wir Slicing verwenden, um Elemente aus einem Array zu löschen.

Die spezifischen Schritte sind wie folgt:

1. Konvertieren Sie das Array in ein Slice.

2. Verwenden Sie die Funktion append(), um das Element über den Index des zu löschenden Elements im Slice zu löschen das Slice zurück in ein Array

Das Folgende ist ein Beispielcode:

var arr [5]int = [5]int{1, 2, 3, 4, 5}

slice := arr[:]

slice = append(slice[:2], Slice[3:] ...)

für _, Wert := Bereich Slice {

fmt.Println(value)
Nach dem Login kopieren
Nach dem Login kopieren
}


Zuerst das Array in ein Slice umwandeln und dann das Element mit Index 2 löschen ( d. h. das dritte Element) im Slice und konvertieren Sie das Slice dann zurück in eine Array-Gruppe. Das Ausgabeergebnis ist: 1 2 4 5.

Die Methode zum Löschen von Array-Elementen durch Slicing kann nicht nur Elemente löschen, sondern auch die Position von Elementen ändern und eine beliebige Anzahl von Elementen löschen. Wenn Sie in der tatsächlichen Entwicklung häufig Elemente hinzufügen, löschen oder ändern müssen, wird daher empfohlen, Slices anstelle von Arrays zu verwenden.

Zusammenfassung:

In Golang ist die Methode zum Löschen von Array-Elementen nicht so flexibel wie das Slicing, Sie können jedoch Standardwerte oder Slices verwenden, um den Löschvorgang zu implementieren. In der tatsächlichen Entwicklung wird empfohlen, eine geeignete Methode basierend auf der tatsächlichen Situation auszuwählen.

Das obige ist der detaillierte Inhalt vonGolang-Array löschen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage