Heim >Backend-Entwicklung >Golang >Wozu dient der Golang-Bereich?

Wozu dient der Golang-Bereich?

PHPz
PHPzOriginal
2023-04-14 09:16:431437Durchsuche

Als effiziente und prägnante Programmiersprache gewinnt Golang (auch bekannt als Go) immer mehr Unterstützer und Entwickler. Seine umfangreichen Bibliotheken und seine prägnante Syntax machen Golang sehr praktisch und angenehm zu verwenden. In diesem Artikel stellen wir die Verwendung von Range in Golang im Detail vor, um Golang besser für die Programmierung zu nutzen!

Was ist Reichweite?

range ist eine in Golang integrierte Funktion, die jedes Element in der Sammlung (Array, Slice, Map usw.) direkt herausnehmen kann, was sehr praktisch ist. Im eigentlichen Programmierprozess verwenden wir häufig die Bereichsfunktion, um die Datensammlung zum Berechnen, Drucken, Filtern und anderen Vorgängen zu durchlaufen.

Die grundlegende Syntax der Verwendung von Bereich

Die grundlegende Syntax von Bereich lautet wie folgt:

für Index, Wert := Bereichssammlung {#🎜 🎜#

// 针对value和index进行操作
# 🎜🎜#}

wobei Index den Index des aktuell durchlaufenen Elements darstellt und Wert das aktuell durchlaufene Element darstellt.

Zum Beispiel können wir „range“ verwenden, um ein Integer-Array zu durchlaufen:

package main

import „fmt“

# 🎜🎜 #func main() {

nums := []int{2, 3, 4}
sum := 0
for _, num := range nums {
    sum += num
}
fmt.Println("sum: ", sum)
}

Ergebnisausgabe: Summe: 9

Im obigen Code durchlaufen wir das Array nacheinander Das Element in Nums wird gemäß += akkumuliert und schließlich die Summe der Elemente berechnet.

Indizes im Bereich verwenden

Im Bereich können wir Indizes (Indizes) verwenden, um Sammlungselemente zu durchlaufen und gleichzeitig Elementindizes und -werte auszugeben: #🎜🎜 #

Paket main

import "fmt"

func main() {

nums := []int{2, 3, 4}
for i, num := range nums {
    fmt.Printf("index: %d, value: %d\n", i, num)
}

}

Wenn Sie dieses Programm ausführen, werden Sie erhält die folgende Ausgabe:

index: 0, Wert: 2

index: 1, Wert: 3

index: 2, Wert: 4

#🎜🎜 #Index im Bereich ignorieren


Wenn wir den Index im Bereich nicht verwenden müssen, können wir ihn ignorieren und stattdessen „_“ verwenden.

package main

import "fmt"

func main() {

nums := []int{2, 3, 4}
for _, num := range nums {
    fmt.Println("value: ", num)
}
}

# 🎜🎜#Ausgabeergebnis:

Wert: 2

Wert: 3

Wert: 4

Karte

#🎜 im Bereich verwenden 🎜#Zusätzlich zur Verarbeitung von Arrays und Slices in Bereichen können wir auch Zuordnungen (Map) verarbeiten. Die spezifische Implementierung ist wie folgt:


package main

import „fmt“ # 🎜🎜#

func main() {

kvs := map[string]string{"a": "apple", "b": "banana"}
for k, v := range kvs {
    fmt.Printf("%s -> %s\n", k, v)
}

}

Ausgabeergebnis:

a -> apple#🎜🎜 # b -> banane

Es ist ersichtlich, dass wir im Bereich nicht nur Arrays und Slices verarbeiten, sondern auch problemlos Map durchqueren können.

Verwenden von Kanälen in Reichweite

Zusätzlich zu Arrays, Slices und Zuordnungen können wir auch Kanäle (Kanäle) in Reichweite durchlaufen. Der Beispielcode lautet wie folgt: #🎜🎜 #

package main


import "fmt"

func main() {

c := make(chan int, 2)
c <- 1
c <- 2
close(c)
for v := range c {
    fmt.Println(v)
}

}

Ausgabeergebnis:

1

2

Im obigen Beispielcode definieren wir einen Kanal c mit einer Kapazität von 2 und setzen die beiden Werte 1 und 2 in den Kanal und schließen Sie den Kanal schließlich über die Funktion close (). Wenn Sie einen Kanal in einem Bereich verwenden, wird die Schleife automatisch beendet, wenn der Kanal geschlossen wird.

Zusammenfassung

In Golang ist Range eine sehr praktische Möglichkeit, verschiedene Datenstrukturen zu durchqueren. Mithilfe der Bereichsfunktion können wir problemlos verschiedene Datentypen durchlaufen, um die benötigten Daten zu erhalten. Unabhängig davon, ob es sich um Arrays, Slices, Maps oder Kanäle handelt, ist die Verwendung von Bereichen eine effiziente und elegante Möglichkeit, uns dabei zu helfen, die wahre Bedeutung unserer Programme zu verstehen.

Das obige ist der detaillierte Inhalt vonWozu dient der Golang-Bereich?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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