常量

Go语言中的常量是指在编译时就已知并且不可修改的值。常量可以是数字、布尔值、字符串或者是一个自定义的类型。

在Go语言中,常量的定义使用const关键字,常量的命名规则和变量相同,通常采用驼峰式命名法。

下面是一些关于Go语言常量的详解:

1. 常量的定义

const Pi = 3.14
const (
    StatusOK = 200
    NotFound = 404
)

2. 常量的类型推导

Go语言的常量是有类型的,但是在常量定义时可以不指定类型,Go语言会根据右值推导类型。

const (
    a = 10          // 类型推导为int
    b = 3.14        // 类型推导为float64
    c = "Hello"     // 类型推导为string
)

3. 枚举类型常量

Go语言中没有枚举类型,但是可以使用const定义一组相关的常量来实现类似枚举的功能。

const (
    Sunday = iota    // 0
    Monday           // 1
    Tuesday          // 2
    Wednesday        // 3
    Thursday         // 4
    Friday           // 5
    Saturday         // 6
)

4. 使用iota自增常量

iota是Go语言的一个常量计数器,只能在常量的表达式中使用,每次使用会自增1。

const (
    A = iota  // 0
    B         // 1
    C         // 2
)

5. 无类型常量

Go语言中的常量可以是无类型的,即可以直接使用在不同类型的表达式中。

const (
    Mask1 = 1 << iota  // 1
    Mask2               // 2
    Mask3               // 4
)

6. 常量的使用

常量可以直接在代码中使用,它们的值在编译时就已经确定,因此在运行时无法修改。

fmt.Println(Pi)
fmt.Println(Sunday)

以上就是关于Go语言常量的基本介绍和用法,希望对你有所帮助。