go语言从例子开始之Example11.range遍历
2019-10-23 15:48 _天枢 阅读(329) 评论(0) 编辑 收藏 举报range 迭代各种各样的数据结构。让我们来看看如何在我们已经学过的数据结构上使用 rang
吧。
package main import "fmt" func main() { 这里我们使用 range 来统计一个 slice 的元素个数。数组也可以采用这种方法。 nums := []int{2, 3, 4} sum := 0 for _, num := range nums { sum += num } fmt.Println("sum:", sum) range 在数组和 slice 中都同样提供每个项的索引和值。上面我们不需要索引,所以我们使用 空值定义符_ 来忽略它。有时候我们实际上是需要这个索引的。 for i, num := range nums { if num == 3 { fmt.Println("index:", i) } } range 在 map 中迭代键值对。 kvs := map[string]string{"a": "apple", "b": "banana"} for k, v := range kvs { fmt.Printf("%s -> %s\n", k, v) } range 在字符串中迭代 unicode 编码。第一个返回值是rune 的起始字节位置,然后第二个是 rune 自己。 for i, c := range "go" { fmt.Println(i, c) } }
Result:
$ go run range.go sum: 9 index: 1 a -> apple b -> banana 0 103 1 111
作 者:
天枢
出 处:
http://www.cnblogs.com/yhleng/
关于作者:专注于软件自动化测试领域。如有问题或建议,请多多赐教!
版权声明:本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接。
特此声明:所有评论和私信都会在第一时间回复。也欢迎园子的大大们指正错误,共同进步。或者
直接私信我
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角
【
推荐】
一下。您的鼓励是作者坚持原创和持续写作的最大动力!