一、概念
使用var关键字
- var [name] [type]
- var [name] [type] = [value]
- 可以放置在函数内或直接放在包内
- 使用var()方式集中定义变量
自动识别类型
- var [name1, name2...nameN] = [1, "value2", true..."valueN"]
使用:=
- 只能定义在函数内
- [name1, name2, ...nameN] := [value1, value2...valueN]
二、实地演练
方式1 var方式
定义格式:
var [name] [type]
示例代码:
package main
import "fmt"
func main() {
// 定义变量,golang都会给变量默认赋初值
var a int
var b string
fmt.Printf("%d %q", a, b)
}控制台输出:
0 ""方式2 赋初值
格式定义:
var [name] [type] = [value]
示例代码:
package main
import "fmt"
func main() {
// 定义变量并赋值
var a int = 2
var b string = "hi"
fmt.Println(a, b)
}控制台输出:
2 hi方式3 var多属性方式
定义格式:
var [name1, name2, ...nameN] = [value1, value2...valueN]
示例代码:
package main
import "fmt"
func main() {
// 定义变量由golang自动识别类型
var a, b = 3 , "hello"
fmt.Println(a, b)
}控制台输出:
3 hello方式4 :多属性方式
定义格式:
[name1, name2, ...nameN] := [value1, value2...valueN]
示例代码:
package main
import "fmt"
func main() {
// 简版定义变量,注意:第一次定义需要用":",后面赋值不需要":"
a, b := 4 , "say, hi!"
a = 5
fmt.Println(a, b)
}控制台输出:
5 say, hi!方式5 定义包内部变量
示例代码:
package main
import "fmt"
var (
a = 5
b = "HaHa"
)
var a1 = 6
var b1 = "HeHe"
func main() {
fmt.Println(a, b)
fmt.Println(a1, b1)
}控制台输出:
5 HaHa
6 HeHe