使用关键字var
var v1 int //整型
var v2 string //字符串
var v3 [10]int //数组
var v4 []int //数组切片
var v5 struct { //结构体
f int
}
var v6 *int //指针
var v7 map[string] //map,key为string类型,value为int类型
还有一种用法就是将若干个需要声明的变量放置在一起
var (
v1 int
v2 string
)
变量初始化有三种方式:
var v1 int = 10 //方式1
var v2 = 10 //方式2,编译器可以自动推导出v2的类型
v3 := 10 //方式3,可以省略关键字var和类型,编译器可以自动推导出v3的类型
注意:出现在:=左侧的变量不能是已经被声明过的,否则会导致编译错误
在Go语言中,变量初始化和变量赋值是两个不同的概念
var v10 int
v10 = 123
注意:Go语言里面支持多重赋值功能,这个在Python里面也是支持的。
i, j = j, i //交换i和j变量
_(下划线)是个特殊的变量名,任何赋予它的值都会被丢弃:
_, i, _, j := 1, 2, 3, 4
func test() (int, string) {
return 250, "sb"
}
_, str := test()
原文:http://blog.51cto.com/ljmict/2162204