範囲

range の形式の for ループは、スライスまたはマップを反復処理します。

スライスを反復処理する際、各反復で2つの値が返されます。最初の値はインデックスで、2番目の値はそのインデックスにある要素のコピーです。

  1. package main
  2. import "fmt"
  3. var pow = []int{1, 2, 4, 8, 16, 32, 64, 128}
  4. func main() {
  5. for i, v := range pow {
  6. fmt.Printf("2**%d = %d\n", i, v)
  7. }
  8. }