代码:
arr := []string{"A", "B", "C", "D"}
i := 0
for i, s := range arr {
fmt.Println(i, s)
if s == "C" {
break
}
}
fmt.Println(i)输出:
0 A
1 B
2 C
0预期:
0 A
1 B
2 C
2我原以为我可以在-范围外访问"i“,因为它是预先初始化的。可能有一些与变量的范围有关的东西,如果是的话,如何实现我所期望的呢?
*注:我是刚接触过哥朗的。
发布于 2021-12-16 14:57:16
只要在外部作用域(https://go.dev/play/p/Q3OJ0mUZJH-)中声明变量,就可以访问循环内部和外部的变量。
arr := []string{"A", "B", "C", "D"}
i := 0
s := ""
for i, s = range arr {
fmt.Println(i, s)
if s == "C" {
break
}
}
fmt.Println(i)https://stackoverflow.com/questions/70381078
复制相似问题