Tips: (关于单双引号)Go 语言单引号和双引号和 C 语言一样也是有区别的。单引号表示单字符。双引号才是字符串。
Tips: (关于常量未使用)常量和变量不一样,变量定义之后一定需要使用(不然会报错),常量定义之后可以不使用。
// 常量
const identifier [type] value
显式类型定义:const b string = "abc"
隐式类型定义:const c = "cbd"
// 定义一组常量
const C1,C2,C3 = 100, 3.14, "嘿嘿嘿"
const (
MALE = 0
FEMALE = 1
UNKNOW = 2
)
Tips:如果一组常量中有常量没有初始值,那么当前常量和上一个常量的值是一致的(必须得在同一组中)
const (
a int = 100
b
c string = "ou ho"
)
fmt.Printf("%T,%d \n", a, a) // int,100
fmt.Printf("%T,%d \n", b, b) // int,100
fmt.Printf("%T,%s \n", c, c) // string,ou ho
iota,特殊常量,可以认为是可以被编译器修改的常量
iota 可以作为枚举值。
const (
a = iota
b = iota
c = iota
)
// 可以简写为以下形式
const (
e = iota
f
g
)
// iota 的推算
const (
A = iota // 0
B // 1
C // 2
D = "哈哈哈" // "哈哈哈" iota = 3
E // 4
F = 100 // 100 iota = 5
G // 6
H = iota // 7
I // 8
)
const (
J = iota // 0
)
go 语言中如果使用单引号表示的字符,则是 int32 类型, 不是 string 哦!
网友评论