go语言系列-常量
程序员文章站
2022-04-15 23:27:34
简介 常量是一个简单值的标识符,在程序运行时,不会被修改的量,即常量是恒定不变的值,声明常量的关键字是 const 。 常量中的数据类型只可以是布尔型、数字型(整数型、浮点型和复数)和字符串型。 常量的定义 案例演示 iota Go 语言预定义了这些常量:true、false 和 iota。 iot ......
简介
常量是一个简单值的标识符,在程序运行时,不会被修改的量,即常量是恒定不变的值,声明常量的关键字是const。
常量中的数据类型只可以是布尔型、数字型(整数型、浮点型和复数)和字符串型。
常量的定义
const constantname [type]= value 显示类型定义: const name string = "zisefeizhu" 隐式类型定义: const string = "zisefeizhu" 相同类型简写: const name, name1 = "zisefeizhu", "jingxing"
案例演示
func main() { const ( name = "zisefeizhu" age = 22 age2 //在批量声明常量的时候,如果其中有一个常量没有赋值,其内容和上一个常量一样 ) fmt.println(name, age, age2) } //zisefeizhu 22 22
iota
go 语言预定义了这些常量:true、false 和 iota。
iota 比较特殊,可以被认为是一个可被编译器修改的常量,它默认开始值是0,每调用一次加1。遇到 const 关键字时被重置为 0。
iota 可理解为是const 语句块中的行索引,使用iota 能简化定义,在定义枚举时很有用。
func main() { const ( a = iota //0 b // b = iota //1 kb = 1 << (10 * iota) // 定义数量级 //1048576 //1 << 20 c // c = iota //1073741824 //1048576 * 1024 n = 100 //声明中间插队 d = 1 << iota //32 1<< 5 _ //使用_跳过某些值 //32 * 2 1 << 6 e = 1 << iota //128 //32 * 2 * 2 1 << 7 ) const ( //重新计数 x, y = iota + 1, iota+2 //1 2 f, g //2 3 ) fmt.println(a,b,kb,c,n,d,e) fmt.println(x,y,f,g) } //0 1 1048576 1073741824 100 32 128 //1 2 2 3