对变量的官方说明:https://tour.go-zh.org/basics/8
变量使用var
关键字声明,个var语句可以声明1个或多个变量。如果声明后不赋值。会设置默认值。
import "fmt"
var c, python, java bool
func main() {
var i int
fmt.Println(i, c, python, java) //0 false false false
}
声明一个变量直接赋予值。这个变量的类型会根据赋值的类型推导出来。
package main
import "fmt"
func main() {
var j = 10.5
fmt.Println(j)
}
省略var关键字使用:=,:=左边的变量必须没有声明过。否则编译报错。
package main
import "fmt"
func main() {
num := 8
fmt.Println(num)
}
4.1. 一次性声明多个变量并赋值。
package main
import "fmt"
func main() {
var name,age,sex = "tom",18,"男"
fmt.Println(name,age,sex)//tom 18 男
}
例子:var ()的方式:
package main
import "fmt"
var n1 = 100
var n2 = 500
var name = "tom"
var (
age = 30
sex = "男"
)
func main() {
fmt.Println(n1,n2,name,age,sex)//100 500 tom 30 男
}
4.2. 省略var,一次性声明多个变量并赋值。
package main
import "fmt"
func main() {
name,age,sex := "tom",18,"男"
fmt.Println(name,age,sex)//tom 18 男
}
import "fmt"
func main() {
var name = "张三"
name = "李四"
name = 10 //本行编译错误。改变了数据类型
fmt.Println(name)
}
上面的name变量原来是string,改为int类型的10就会编译出错。