前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >Go语言学习系列——常量——【坚果派-红目香薰】

Go语言学习系列——常量——【坚果派-红目香薰】

作者头像
红目香薰
发布2025-03-06 08:10:08
发布2025-03-06 08:10:08
5700
代码可运行
举报
文章被收录于专栏:CSDNToQQCodeCSDNToQQCode
运行总次数:0
代码可运行
作者简介:大数据领域优质创作者、CSDN博客专家 、阿里云博客专家、华为云课堂认证讲师、华为云社区云享专家、坚果派社区成员、具有10余年横向开发经验,全国教师技能大赛获奖教师,现从事于大学计算机领域教育工作。 主要内容:人工智能与大数据、Java、Python、C#、PHP、ASP.NET、ArkTS、FAQ、简历模板、学习资料、面试题库、就业指导等。 初心目标:持续输出,为技术人创造更多的价值。

常量

命名规范:

  1. 常量通常使用大写字母
  2. 多个单词用下划线分隔
  3. 包级常量应该有清晰的前缀

常量的定义和使用

代码语言:javascript
代码运行次数:0
复制
package main

import "fmt"

func main() {
    // 1. 基本常量
    const (
        PI       = 3.14159
        APP_NAME = "MyApp"
    )
    
    // 2. 分组常量
    const (
        MaxConnections = 100
        Timeout        = 30
        Version        = "v1.0"
    )
    
    // 3. 类型常量
    const (
        IntValue    int     = 10
        FloatValue  float64 = 20.5
        StringValue string  = "hello"
    )
    
    // 打印结果
    fmt.Println("常量示例:")
    fmt.Println("-------------------")
    fmt.Println("PI:", PI)
    fmt.Println("APP_NAME:", APP_NAME)
    fmt.Println()
    
    fmt.Println("系统配置:")
    fmt.Println("-------------------")
    fmt.Println("最大连接数:", MaxConnections)
    fmt.Println("超时时间:", Timeout)
    fmt.Println("版本号:", Version)
    fmt.Println()
    
    fmt.Println("类型常量:")
    fmt.Println("-------------------")
    fmt.Println("整数值:", IntValue)
    fmt.Println("浮点值:", FloatValue)
    fmt.Println("字符串:", StringValue)
    
    // 等待用户输入
    fmt.Println("\n按回车键退出...")
    fmt.Scanln()
}

示例效果:

iota的特点

  1. 每个const关键字开始,iota重置为0
  2. 每新增一行常量声明,iota计数一次
  3. 可以使用表达式计算值
  4. 支持跳过某些值

枚举使用场景

  • 配置项
  • 状态码
  • 错误码
  • 权限控制
  • 枚举值

iota的使用示例

代码语言:javascript
代码运行次数:0
复制
package main

import "fmt"

func main() {
    // 1. 基本的iota枚举
    const (
        Sunday = iota
        Monday
        Tuesday
        Wednesday
        Thursday
        Friday
        Saturday
    )
    
    // 2. 设置起始值的iota
    const (
        Open = iota + 1
        Close
        Pending
    )
    
    // 3. 位掩码示例
    const (
        Read = 1 << iota
        Write
        Execute
    )
    
    // 4. 跳过值的iota
    const (
        A = iota
        _
        B
        C
    )
    
    // 打印结果
    fmt.Println("=== 星期枚举 ===")
    fmt.Println("Sunday =", Sunday)
    fmt.Println("Monday =", Monday)
    fmt.Println("Saturday =", Saturday)
    
    fmt.Println("\n=== 状态枚举 ===")
    fmt.Println("Open =", Open)
    fmt.Println("Close =", Close)
    fmt.Println("Pending =", Pending)
    
    fmt.Println("\n=== 权限枚举 ===")
    fmt.Println("Read =", Read)
    fmt.Println("Write =", Write)
    fmt.Println("Execute =", Execute)
    
    fmt.Println("\n=== 跳值枚举 ===")
    fmt.Println("A =", A)
    fmt.Println("B =", B)
    fmt.Println("C =", C)
    
    // 等待用户输入后退出
    fmt.Println("\n按回车键退出...")
    fmt.Scanln()
}

三级联动枚举示例

- 使用自定义类型定义枚举 - 实现了省市区三级联动关系 - 使用结构体组织数据 - 提供了名称转换方法 - 支持灵活的数据查询

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2025-03-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 常量
    • 命名规范:
    • 常量的定义和使用
    • iota的特点
    • 枚举使用场景
    • iota的使用示例
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档