go语言中有枚举吗?

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

站在用户的角度思考问题,与客户深入沟通,找到武穴网站设计与武穴网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:成都网站设计、做网站、企业官网、英文网站、手机端网站、网站推广、空间域名、网页空间、企业邮箱。业务覆盖武穴地区。

在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语言中有枚举吗?
文章起源:https://www.cdcxhl.com/article28/pppicp.html

成都网站建设公司_创新互联,为您提供品牌网站建设商城网站域名注册App开发外贸建站微信公众号

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

成都做网站