为什么我们不能使用 builtrange来指示给定数组索引的下限,但我们可以指定索引的上限?
给定一片 int:
array := []int{4, 76, -29, 3, 9, 223, 0, -3, -44, 76, 3, 98, 62, 144}
我想在切片上进行范围,不包括前两个元素。
我可以用for循环来做到这一点:
for i := 2; i < len(array); i++ {
fmt.Printf("%d ", array[i])
}
但不能使用内置range:
for i := range array[2:] {
fmt.Printf("%d ", array[i])
}
奇怪的是,我可以排除上限的元素,如下所示:
for i := range array[:5] {
fmt.Printf("%d ", array[i])
}
在Go Playground上运行
为什么是这样?
繁花不似锦
慕村225694
相关分类