/*
 go range 函数
 range 函数是个神奇而有趣的内置函数
 你可以使用它来遍历数组
 切片
 字典

 当用于遍历数组和切片的时候 range函数返回索引和元素
 当用于遍历字典的时候 range函数返回字典的建和值
*/

package main

import (
    "fmt"
)

func main() {
    /*
      这里我们使用range来计算一个切片的所有元素和
    */

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

    kvs := map[string]string{"a": "apple"}

    for k, v := range kvs {
        fmt.Println(k, v)
    }

    for i, c := range "go" {
        fmt.Println(i, c)
    }
}