Gamma Golang

Gamma Golang
L'operatore di gamma in GO consente di iterare su varie strutture di dati. È possibile iterare su mappe, fette, canali o un array utilizzando il loop e la parola chiave a gamma.

Usando questa guida, ti insegneremo come utilizzare l'operatore di gamma per iterare su varie strutture di dati in Go.

Gamma sulla mappa

È possibile utilizzare l'operatore di gamma per iterare su una mappa Golang. Se utilizzato con un tipo di mappa, l'operatore di intervallo restituisce due valori: chiave e valore.

Ad esempio, per restituire tutte le chiavi e i valori di una mappa, possiamo fare:

Pacchetto principale
Importa "FMT"
func main ()
utenti: = map [int] string
1: "Matthew K",
2: "Daniel J",
3: "Mary Y",

per la chiave, valore: = utenti di gamma
fmt.Println (chiave, valore)

Nell'esempio sopra, utilizziamo l'operatore di intervallo per ottenere le chiavi e i valori di una mappa. Per ottenere solo i valori di una mappa, puoi fare:

per _, valore: = utenti di gamma
fmt.Println (valore)

Per ottenere solo le chiavi di una mappa:

per la chiave: = utenti di gamma
fmt.Println (chiave)

Gamma su array/fetta

Possiamo anche iterare su un array o una fetta usando l'operatore di gamma. Per esempio:

Database: = [] String "Mysql", "MongoDB", "sqlite"
per indice, db: = database gamma
fmt.Println (indice, db)

L'esempio sopra utilizza l'operatore di gamma per iterare sugli articoli in una fetta. Restituisce l'indice e il valore associato come:

0 mysql
1 MongodB
2 sqlite

Gamma sulla stringa

Possiamo anche usare l'operatore di gamma per iterare su una stringa. Tieni presente che convertiamo la stringa in un array di rune. In questo modo ci consente di accedere a singoli elementi della stringa.

Un esempio è come mostrato di seguito:

str: = "ciao"
per indice, char: = gamma str
fmt.Println (indice, string (char))

Quanto sopra dovrebbe utilizzare l'operatore di intervallo per iterare su una stringa e restituire il carbone all'indice specifico. Quindi utilizziamo il metodo stringa per lanciare il carbone al suo equivalente di stringa.

Produzione:

0 h
1 e
2 l
3 l
4 o

Gamma sul canale

Possiamo anche iterare su un canale, come mostrato nell'esempio seguente:

ch: = make (chan int)
go func ()
cap <- 1
cap <- 2
cap <- 3
Close (Ch)
()
per valore: = intervallo ch
fmt.Println (valore)

In questo esempio, iteliamo sui valori inviati al canale fino alla chiusura. Il codice sopra dovrebbe stampare:

1
2
3

Conclusione

In questo articolo, abbiamo discusso di come utilizzare l'operatore di gamma per iterare su una mappa, una fetta, un array, una stringa e un canale.

Continua a imparare!