Go学习笔记之变量和常量
1 变量
1-1 声明
在 Go 语言中声明变量使用关键字 var
例如
var int_a int; // 多数情况下分号可以省略
在声明的同时没有初始化值时,Go 会给基础类型设置默认值,
int 0
int8 0
int32 0
int64 0
uint 0x0
rune 0 //rune的实际类型是 int32
byte 0x0 // byte的实际类型是 uint8
float32 0 //长度为 4 byte
float64 0 //长度为 8 byte
bool false
string ""
声明的同时也可以赋值初始化,例如
var int_a int =1
声明同时赋值可以简单缩写为
int_a := 1
1-2 多个相同类型的声明
多个相同类型的声明可以简写为
var a, b, c int
也可以同时赋值
var a, b, c int = 1, 2, 3
也可以简写为
a, b, c := 1, 2, 3
1-3 多个不同类型的声明
多个不同类型的声明可以简写为
var (
a int
b string
)
也可以同时赋值
var (
a int = 1
b string = "abc"
)
1-4 特殊的空标识 _
任何赋值空标识 _ 的都会丢弃,一般用来做返回值有多个值时,但可能只用到其中的几个,只保留用到值,其他的值可以舍弃。
a, _, c := 1, 2, 3
数值 2 会被丢弃掉
2 常量
2-1 声明
在 Go 语言中声明变量使用关键字 const,常量的值只能是 bool、string 或数字类型中的一种。
例如
const a int = 1
因为声明常量必须初始化,所以type可以省略,即
const a = 1
2-2 多个相同类型的声明
多个相同类型的声明可以简写为
const a, b = 1, 2
2-3 多个不同类型的声明
多个不同类型的声明可以简写为
const (
a = 1
b = "abc"
c = false
)
2-4 特殊的关键字iota
Go里面有一个关键字iota,这个关键字用来声明enum的时候采用,它默认开始值是0,每调用一次加1
const (
a = iota // a = 0
b // b = 1
c // c = 2
)
iota也可以参与运算,例如
const (
a = 1 << iota // a = 1 (iota has been reset) 1*2^0
b = 1 << iota // b = 2 1*2^1
c = 1 << iota // c = 4 1*2^2
)
参考资料
《Go语言.云动力》
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。