Go学习——1.常量

  1. const 定义常量,不能改值
  2. const 定义的变量不允许接收函数返回值,因为常量的值时在编译器可知的,函数调用只有再运行时发生。比如const a = math.Sqrt(4),这是不对的。
  3. 字符串常量,const str = “hello world”,他们都是untyped,没有任何数据类型的。

使用常量定义枚举类型

func enums() {
    const (
        cpp = 0
        java = 1
        python = 2
        golang = 3
    )
    fmt.Println(cpp, java, python, golang)
}
// 对于上面的0 1 2 3自增类型,可以用关键字iota,如下
func enums() {
    const (
        cpp = iota // iota从0开始自增1
        java
        python
        golang
    )
    fmt.Println(cpp, java, python, golang) // 这样打印是 0 1 2 3 
}
// 关键字iota的进阶用法
func enums() {
    const (
        cpp = iota
        _ // 这里的下划线代表跳过,虽然是跳过,但是iota仍然自增1
        python
        golang
        javascript
    )
    fmt.Println(cpp, python, golang, javascript) // 这样打印是 0 2 3 4 
}
// 关键字iota的再进阶用法
func enums() {
    // b, kb, mb, gb, tb, pb
    const (
        b = 1 << (10 * iota)
        kb
        mb
        gb
        tb
        pb
    )
    fmt.Println(b, kb, mb, gb, tb, pb)
    // 这样打印是 1 1024 1048576 1073741824 1099511627776 1125899906842624
}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值