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()
}
示例效果:
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()
}
三级联动枚举示例
- 使用自定义类型定义枚举 - 实现了省市区三级联动关系 - 使用结构体组织数据 - 提供了名称转换方法 - 支持灵活的数据查询