我正在学习go(golang)的基础知识。
我似乎无法确定初始化程序变量的工作原理。
package main
import "fmt"
var i, j int = 100000, 5
func main() {
fmt.Println(j)
}
当我打印出j时,我得到5而不是100000,为什么?
答案 0 :(得分:4)
很明显,i = 100000
和j = 5
。
var i, j int = 100000, 5
等同于
var i int = 100000
var j int = 5
只需将变量列表中的项目与初始化程序列表中的相应项目匹配。
The Go Programming Language Specification
如果给出了表达式列表,则变量将使用进行初始化 遵循分配规则的表达式。
例如,
package main
import "fmt"
var i, j int = 100000, 5
func main() {
fmt.Println(i, j)
}
游乐场:https://play.golang.org/p/w821v9Tl1zx
输出:
100000 5
答案 1 :(得分:4)