4、常量与枚举

package main

import (
    "fmt"
    "math"
)

func main() {

    // 常量定义
    const a int = 123
    const b,c = "str",false
    const (
        d int = 1
        e string = "xi"
    )

    // const 数值可作为各种类型使用
    const f,g = 3,4
    var h int = int(math.Sqrt(f*f + g*g))

    fmt.Println(a,b,c,d,e,h)

    // 枚举类型
    const (
        aa = 0
        bb = 1
        cc = 2
        dd = 3
    )
    fmt.Println(aa,bb,cc,dd)

    // 枚举类型 iota
    const (
        a1 = iota
        b1
        c1
        d1
    )
    fmt.Println(a1,b1,c1,d1) // iota 后面的值都会自增1

    // 枚举类型iota中间跳过定义
    const (
        a2 = iota
        _
        c2
        d2
    )
    fmt.Println(a2,c2,d2) // 0 2 3

    // iota 还可以参与运算
    const (
        ap = 1 << (10 * iota)
        bp
        cp
    )
    fmt.Println(ap,bp,cp)

    
}

 

posted @ 2021-11-18 20:42  JaydenQiu  阅读(35)  评论(0)    收藏  举报