【链块技术16期】区块链技术语言(八)——Go语言常量

一、常量名

常量的命名规则与命名风格和变量的相同,具体参见变量的命名规则。

二、常量的特点

常量在编译时就已经确定为已知且不可改变的值。

三、字面常量

字面常量就是一个确定值的本身,如表1所示。 

四、单个常量的声明且赋值

常量是在编译期就要确定的值,不能对常量先声明再赋值,因为赋值语句是在程序运行时才执行。所以,单个常量的赋值方式有两种,如表2所示。

五、多个常量的声明和赋值

和单个常量一样,多个常量也不能先声明再赋值,需要边声明边赋值。多个常量的赋值方式有四种,如表3。

注:方式4中的c“继承”b的值,c=“哈”。

六、iota枚举

在Go语言中,没有直接支持枚举的关键字,但是Go语言提供了另一种方法来实现枚举,那就是const+iota。iota,一个可以被编译器修改的特殊常量,是常量的计数器。

6.1 iota的运用规则

♢ 在每一个const关键字出现时,被重置为0;

♢ const中每新增一行常量的声明,就使iota计数一次;

♢ 某一行有新的常量声明,则这一行的iota值会被"覆盖",直到重新出现iota,恢复所在位置的值。

6.2 枚举示例

七、常量的类型转换

和变量的类型转化类似,常量的类型转化也必须显示声明,但是常量的声明需要注意两点:第一,由于常量是在编译期就已经确定的值,所以常量必须在声明的同时就赋值;第二,强转后值的大小不能改变,例如,值为10.0的浮点型常量是可以转换为值为10的整数型常量,但值为10.2的浮点型常量是不可以转换为值为10的整数型常量的。

常量部分可以转换的类型如表4所示。

参考资料

[1] https://studygolang.com/articles/5386[2] https://studygolang.com/articles/2192

本文完,获取更多资讯,敬请关注区块链工程师。

链块学院:专注于区块链技术研发与教育

   —————END—————

本文完,获取更多资讯,敬请关注区块链工程师。

  

猜你喜欢

转载自blog.csdn.net/liankuaixy/article/details/81387826
今日推荐