# iota

iotago 语言的常量计数器,只能在常量的表达式中使用。 iotaconst 关键字出现时将被重置为 0const 中每新增一行常量声明将使 iota 计数一次 ( iota 可理解为 const 语句块中的行索引)。 使用 iota 能简化定义,在定义枚举时很有用。

举个例子:

const (
            n1 = iota //0
            n2        //1
            n3        //2
            n4        //3
        )

# 1.2.2. 几个常见的 iota 示例:

使用_跳过某些值

const (
            n1 = iota //0
            n2        //1
            _
            n4        //3
        )

iota 声明中间插队

const (
            n1 = iota //0
            n2 = 100  //100
            n3 = iota //2
            n4        //3
        )
    const n5 = iota //0

定义数量级 (这里的 << 表示左移操作, 1<<10 表示将 1 的二进制表示向左移 10 位,也就是由 1 变成了 10000000000 ,也就是十进制的 1024 。同理 2<<2 表示将 2 的二进制表示向左移 2 位,也就是由 10 变成了 1000 ,也就是十进制的 8 。)

// 左移 n 位就是 乘以 2 的 n 次方
// 右移 n 位就是  除以 2 的你次方
const (
            _  = iota
            KB = 1 << (10 * iota)
            MB = 1 << (10 * iota)
            GB = 1 << (10 * iota)
            TB = 1 << (10 * iota)
            PB = 1 << (10 * iota)
        )

多个 iota 定义在一行

const (
            a, b = iota + 1, iota + 2 //1,2
            c, d                      //2,3
            e, f                      //3,4
        )
更新于 阅读次数

请我喝[茶]~( ̄▽ ̄)~*

PPYYLEE 微信支付

微信支付

PPYYLEE 支付宝

支付宝

PPYYLEE 贝宝

贝宝