func consts() {
const fileName ="a.txt"
const a,b =3,4
var k int
k=int(math.Sqrt(a*a+b*b))
fmt.Println(fileName,k)
}
const关键字:表示常量,常量可定义在包内部,放法外面,放法内部可直接使用,可直接指定常量的类型,也可不指定类型,常量的数值可以当作任何类型使用,当使用这个常量时会自动转换,常量定义也可以使用括号括起来:
const (
fileName ="a.txt"
a,b =3,4
)
枚举类型:
go没有指定的枚举关键字,可以使用const使用枚举
func enums() {
const (
java = 0
golang = 1
c = 2
)
fmt.Println(java,golang,c)
}
控制台:
0 1 2
Process finished with exit code 0
go语言提供一种简单写法:关键字---》iota 表示一个变量是自增值
func enums() {
const (
java = iota
golang
c
)
fmt.Println(java,golang,c)
}
控制台:
0 1 2
Process finished with exit code 0
结果依然为0 1 2
高级用法:可以参与运算
const (
b=1<<(10*iota)
kb
mb
gb
tb
)
控制台:
1 1024 1048576 1073741824 1099511627776
Process finished with exit code 0