定义枚举
定义枚举使用示例一:const
关键字 +()
当前面某个变量使用了iota
后,该变量后面的变量都回给默认加上一个iota
,不论你是否显式的写了出来iota
的取值从0开始iota的累加机制是在=
作用于结束后累加的(即:可理解为行级累加;同一行内的iota
的值是一样的)
import "fmt"
const (
spring = "春"
summer = "夏"
autumn = "秋"
winter = "冬"
)
func main() {
fmt.Println("spring = ", spring) // 输出:spring = 春
fmt.Println("summer = ", summer) // 输出:summer = 夏
fmt.Println("autumn = ", autumn) // 输出:autumn = 秋
fmt.Println("winter = ", winter) // 输出:winter = 冬
const (
a = "春"
b = "夏"
c = "秋"
d = "冬"
)
fmt.Println("a = ", a) // 输出:a = 春
fmt.Println("b = ", b) // 输出:b = 夏
fmt.Println("c = ", c) // 输出:c = 秋
fmt.Println("d = ", d) // 输出:d = 冬
}
示例二:使用iota
关键字,自动(行级)累加
import "fmt"
const (
spring = iota
summer
autumn
winter
)
func main() {
fmt.Println("spring = ", spring) // 输出:spring = 0
fmt.Println("summer = ", summer) // 输出:summer = 1
fmt.Println("autumn = ", autumn) // 输出:autumn = 2
fmt.Println("winter = ", winter) // 输出:winter = 3
const (
a = iota + 5
b
c
d
)
fmt.Println("a = ", a) // 输出:a = 5
fmt.Println("b = ", b) // 输出:b = 6
fmt.Println("c = ", c) // 输出:c = 7
fmt.Println("d = ", d) // 输出:d = 8
// iota累加机制,是基于行的,同一行内的iota值一样
const (
q, w = iota + 5, iota - 3
e, r
)
fmt.Println("q = ", q, ",\tw = ", w) // 输出:q = 5 , w = -3
fmt.Println("e = ", e, ",\tr = ", r) // 输出:e = 6 , r = -2
const (
v1 = iota + 5
v2
v3 = iota + 3
v4 = iota + -1
)
fmt.Println("v1 = ", v1) // 输出:v1 = 5
fmt.Println("v2 = ", v2) // 输出:v2 = 6
fmt.Println("v3 = ", v3) // 输出:v3 = 5
fmt.Println("v4 = ", v4) // 输出:v4 = 2
}
^_^ 整理自《Go语言区块链应用开发从入门到精通》高野 编著
^_^ 本文已经被收录进《程序员成长笔记》 ,笔者JustryDeng
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)