2.2 Go 常量

Posted perfei

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2.2 Go 常量相关的知识,希望对你有一定的参考价值。

 

package main

import (
    "fmt"
    "math"
)

//常量
func cons(){
    const a,b= 3,4  //常量的数字在不明确指定类型的情况下,即可以作为int使用,也可以作为float32/float64使用
    var c int
    c = int(math.Sqrt(a*a+b*b)) //不需要转float64
    fmt.Println(c)         //5
    const aa,bb int = 3,4
    cc := math.Sqrt(float64(aa*aa + bb*bb))
    fmt.Println(cc)        //5
    fmt.Println(s1,s2)     //你多少次在讲话前 没有去在意对方的心思
}

//包内常量,go的常量通常不全部大写表示,这是因为go语言定义的变量或常量,首字母大写是有特定含义的
const (
    s1,s2 ="你多少次在讲话前","没有去在意对方的心思"
)

//枚举
func enum(){
    //在go中可以简单地使用const常量来表示枚举
    const(
        java = 0
        net = 1
        c =2
        rust = 3
    )
    const(
        aa = iota //一个行计数器,从0开始,刚好与枚举从零开始相符,故而使用iota简化枚举的写法
        bb
        _  //_一个占位符,这样下面的dd才能被赋值3
        dd
    )
    const(
        byte = 1 <<(10 * iota)
        kb
        mb
        gb
        tb
        pb
    )
    fmt.Println(byte,kb,mb,gb,tb,pb)  //1 1024 1048576 1073741824 1099511627776 1125899906842624
}

func main() {
    cons()
    enum()
}

 

以上是关于2.2 Go 常量的主要内容,如果未能解决你的问题,请参考以下文章

Go基础基础语法

Go语言实战: 编写可维护Go语言代码建议

2.2 Go语言中的布尔型和整型

《Go语言精进之路》读书笔记 | 使用无类型常量简化代码

[译]Go语言最佳实战[二]

Go 系列教程 —— 5. 常量