GO语言基础语法之Range(第十八天)

GO中的关键字Range

  • for循环中迭代数组(array)、切片(slice)、链表(channel)、集合(map)的元素
  • 在数组和切片中它返回元素的索引值(index)
  • 在Map中返回 key-value 对的 key 值
  • 通道(channel)只返回通道内的值
package main
import "fmt"
func main() {
	//这是我们使用range去求一个slice的和。使用数组跟这个很类似
	nums := []int{2, 3, 4}
	sum := 0
	for _, num := range nums {     //s使用了匿名占位符,切片中 _ 对应的 切片的index
		sum += num
	}
	fmt.Println("sum:", sum)
	for key, value := range nums {
		fmt.Printf("key:%d  value:%d\n", key, value)
	}

	//range也可以用在map的键值对上。
	oTmap := map[string]string{"first": "I", "second":"love", "Three":"china"}
	for k, v := range oTmap {
		fmt.Printf("%s -> %s\n", k, v)
	}
	//第一个参数是字符的索引,第二个是字符AscII本身。
	for i, c := range "abcd" {
		fmt.Println(i, c)
	}
}
sum: 9
key:0  value:2
key:1  value:3
key:2  value:4
first -> I
second -> love
Three -> china
0 97
1 98
2 99
3 100

Process finished with exit code 0

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值