语法
使用var关键字对变量进行声明定义
var name type
作用域分为:全局变量和局部变量
使用示例
- 不赋初始值
//默认0
var a int
//默认false
var a bool
//默认""
var a string
//以下引用类型默认nil
var a *int
var a []int
var a map[string] int
var a chan int
var a func(string) int
var a error
- 声明并初始化值
var a,b,c bool
var s1,s2 string = "hello","world"
- 声明并初始化,让编译器自动决定类型
var a,b,i, s1, s2 = true , false, 3, "hello","world"
- 可以放在包内或者函数内
package main
import "fmt"
//全局变量
var aa int = 3
var bb bool = true
var cc string = ""
//不能直接:aa := 4
func main() {
//局部变量
var ee int = 4
var ff bool = false
gg := "1111"
fmt.Println("Hello world")
fmt.Println("%v,%v,%v",ee,ff,gg)
}
- 使用var()集中定义变量
package main
import "fmt"
var (
aa int = 3
bb bool = true
cc string = ""
)
func main() {
fmt.Println(aa,bb,cc)
}
- 无var声明和初始化
package main
import "fmt"
//不能直接:aa := ""
func main() {
aa := "1111"
fmt.Println(aa)
}
注意: 冒号等于(:=)方式只能在函数中使用