码迷,mamicode.com
首页 > 编程语言 > 详细

Go语言基础之常量

时间:2020-03-13 01:16:47      阅读:64      评论:0      收藏:0      [点我收藏+]

标签:运行   枚举   pac   一起   基础   port   相对   package   常量   

Go语言基础之常量

Go语言中常量的声明

目录:

常量

iota

几个常见的iota示例

常量

相对于变量,常量是恒定不变的值,多用于定义程序运行期间不会改变的那些值。 常量的声明和变量声明非常类似,只是把var换成了const,常量在定义的时候必须赋值。

const pi = 3.14
const g = 9.98

声明了pig这两个常量之后,在整个程序运行期间它们的值都不能再发生变化了。

多个常量也可以一起声明

const (
    pi = 3.14
    g = 9.98
)

const同时声明多个常量时,如果省略了值则表示和上面一行的值相同。

package main

import "fmt"

func main() {
    const (
        a = 10
        b
        c
    )
    fmt.Println(a, b, c)
}

iota

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

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

几个常见的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。)

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
)

Go语言基础之常量

标签:运行   枚举   pac   一起   基础   port   相对   package   常量   

原文地址:https://www.cnblogs.com/linga/p/12483935.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!