Go by Example: Range

前端之家收集整理的这篇文章主要介绍了Go by Example: Range前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

使用range可以遍历各种数据结构中的元素。让我们看看如何使用range遍历一些我们已经学习过的数据结构。

package main

import "fmt"

func main() {

    // 这里我们使用range遍历切片来求和
    // 这种方法对数组也适用。
    nums := []int{2,3,4}
    sum := 0
    for _,num := range nums {
        sum += num
    }
    fmt.Println("sum:",sum)

    // range 用来遍历数组和切片时,返回索引(index)和元素值(value).
    // 如果我们不要关心索引可以使用一个空值定义符(_)来忽略这个返回值
    // 当然我们有的时候也需要这个索引。
    for i,num := range nums {
        if num == 3 {
            fmt.Println("index:",i)
        }
    }

    // 使用range来遍历字典的时候,返回键值对(key/value)。
    kvs := map[string]string{"a": "apple","b": "banana"}
    for k,v := range kvs {
        fmt.Printf("%s -> %s\n",k,v)
    }

    // range函数用来遍历字符串时,返回Unicode代码点。
    // 第一个返回值是每个字符的起始字节的索引,第二个是rune字符。
    for i,c := range "go" {
        fmt.Println(i,c)
    }
}
输出
$ go run range.go 
sum: 9
index: 1
a -> apple
b -> banana
0 103
1 111


下一个例子: Go by Example: Functions.


英文原文

原文链接:https://www.f2er.com/go/190651.html

猜你在找的Go相关文章