go语言中有枚举吗?-创新互联

在c#、java等高级语言中,经常会用到枚举类型来表示状态等。

陇川ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为成都创新互联的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:028-86922220(备注:SSL证书合作)期待与您的合作!

在golang中并没有枚举类型,可以使用const来模拟枚举类型。                   

枚举可以根据Integer、Long、Short或Byte中的任意一种数据类型来创建一种新型变量。这种变量能设置为已经定义的一组之中的一个,有效地防止用户提供无效值。该变量可使代码更加清晰,因为它可以描述特定的值。

type PolicyType int32const (
    Policy_MIN      PolicyType = 0
    Policy_MAX      PolicyType = 1
    Policy_MID      PolicyType = 2
    Policy_AVG      PolicyType = 3)
}

这里定义了一个新的类型PolicyType,并且定义了4个常量(Policy_MIN, Policy_MAX, Policy_MID, Policy_AVG),类型是PolicyType。

使用举例

func foo(p PolicyType) {
    fmt.Printf("enum value: %v\n", p)}func main() {
    foo(Policy_MAX)}

运行结果

$ go build && ./main
enum value: 1

以上就是golang 为什么没有枚举的详细内容,更多请关注创新互联其它相关文章!


网站题目:go语言中有枚举吗?-创新互联
本文链接:http://bzwzjz.com/article/ccjhoj.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 重庆电商网站建设 手机网站建设 成都网站设计 重庆手机网站建设 外贸网站设计方案 移动网站建设 重庆网站建设 营销型网站建设 高端网站设计 网站制作公司 成都网站制作 成都网站设计制作公司 成都网站制作 成都网站建设 定制网站建设 成都网站设计 成都网站设计 成都营销网站制作 高端定制网站设计 营销网站建设 企业网站设计 成都网站制作