常量声明
常量与变量的声明类似,只是把前边的var换为了const。不同的是常量在声明的时候必须赋值
const pi = 3.14159
和变量声明一样,可以批量声明常量。
const (
e = 2.71828
pi = 3.14159
)
如果是批量声明的常量,除了第一个外其它的常量右边的初始化表达式都可以省略,如果省略初始化表达式则表示使用前面常量的初始化表达式写法,对应的常量类型也一样的。例如:
const (
a = 6
b
c = 9
d
)
fmt.Println(a, b, c, d) // "6 6 9 9"
iota
iota 是Go中的常量计数器,在const出现时,iota被重置为0;之后const中每增加一行,iota加1。例子:
const (
a = iota //0
b //1
c //2
d //3
)
iota应用实例:
定义数量级
const (
_ = 1 << (10 * iota)
KB // 1024
MB // 1048576
GB // 1073741824
TB // 1099511627776
PB // 1125899906842624
EB // 1152921504606846976
ZB // 1180591620717411303424
YB // 1208925819614629174706176
)