常量与变量
2022/1/9小于 1 分钟Go
常量与变量
常量赋值
const string1 string = "abc"
const int1 int = 1
const isPrimary bool = true
变量赋值
var string2 string = "bcd"
var int2 int = 2
在函数中可以用,简洁语法代替,但是在函数外不能这样用,因为 go 代码必须以关键字作为开头(package, import, func)
string2 := "bcd"
int2 := 2
声明变量和赋值是可以拆开的
var aVarible string
aVarible = "abc"
短变量赋值语法实际上是从右边的值自动继承数据类型,这叫做类型推导。
aNewVarible := aVarible // aNewVarible 的类型自动被赋予为字符串
变量作用域
func seeVarInDomain() {
a := 1
{
a = 2
}
fmt.Println(a) // 1 or 2 ?
b := 3
{
b := 4
}
fmt.Println(b) // 3 or 4 ?
}
连续常量自增赋值
func TestBatchVarDefine(t *testing.T) {
const (
Monday = iota + 1
Tuesday
Wednesday
Thursday
Friday
Saturday
Sunday
)
t.Log(Wednesday)
const (
Open = 1 << iota
Close
Pending
Unknown
)
t.Log(Pending)
}