常量
go使用const
定义常量,常量是编译期能确定的结果,在go语言存储在常量中的数据类型只可以是布尔型、数字型(整数型、浮点型和复数)和字符串类型。
const a = 1 //a会被自动推断为int型
const b = 1/2
const c="abc"
const length1 = len(c) //ok length=3 len常量结果为常量
const length2 = len(c[:]) //not ok len变量结果为变量
const c1, c2, c3 = "c", 2, "c2" //ok
//使用带()的写法
const (
Monday, Tuesday, Wednesday = 1, 2, 3
Thursday, Friday, Saturday = 4, 5, 6
)
//类似枚举的写法
const(
Monday=1
Tuesday=2
Wednesday=3
)
iota 简化常量写法
//使用iota
const (
Monday = iota + 1 //1
Tuesday //2
Wednesday //3
)
//go使用枚举的真正方式
type MyType int //定义新的类型
const (
Monday MyType = iota + 1 //1
Tuesday //3
Wednesday //3
)