Ir - Rango
los range la palabra clave se utiliza en forbucle para iterar sobre elementos de una matriz, segmento, canal o mapa. Con matriz y rebanadas, devuelve el índice del elemento como entero. Con mapas, devuelve la clave del siguiente par clave-valor. El rango devuelve uno o dos valores. Si solo se usa un valor a la izquierda de una expresión de rango, es el primer valor en la siguiente tabla.
Expresión de rango | 1er valor | 2do valor (opcional) |
---|---|---|
Matriz o corte a [n] E | índice i int | a [i] E |
Cadena s tipo de cadena | índice i int | runa int |
mapa m mapa [K] V | tecla k K | valor m [k] V |
canal c chan E | elemento e E | ninguna |
Ejemplo
El siguiente párrafo muestra cómo utilizar el rango:
package main
import "fmt"
func main() {
/* create a slice */
numbers := []int{0,1,2,3,4,5,6,7,8}
/* print the numbers */
for i:= range numbers {
fmt.Println("Slice item",i,"is",numbers[i])
}
/* create a map*/
countryCapitalMap := map[string] string {"France":"Paris","Italy":"Rome","Japan":"Tokyo"}
/* print map using keys*/
for country := range countryCapitalMap {
fmt.Println("Capital of",country,"is",countryCapitalMap[country])
}
/* print map using key-value*/
for country,capital := range countryCapitalMap {
fmt.Println("Capital of",country,"is",capital)
}
}
Cuando el código anterior se compila y ejecuta, produce el siguiente resultado:
Slice item 0 is 0
Slice item 1 is 1
Slice item 2 is 2
Slice item 3 is 3
Slice item 4 is 4
Slice item 5 is 5
Slice item 6 is 6
Slice item 7 is 7
Slice item 8 is 8
Capital of France is Paris
Capital of Italy is Rome
Capital of Japan is Tokyo
Capital of France is Paris
Capital of Italy is Rome
Capital of Japan is Tokyo