Go语言之常量与运算符

常量与运算符

  1. 常量声明后必须要赋值,在常量声明组中,赋值可以是向上原则
    举例:
    const (
    aa1 = 1
    bb1
    cc1
    )
    bb1和cc1没有赋值,那么bb1遵循向上原则,值等于aa1,然后cc1遵循向上原则,cc1等于bb1的值,这样三个常量都有了值。
  2. 枚举iota
    const (
    aa1 = iota
    bb1
    cc1
    )
    当一个常量组使用了iota,枚举时,组成员值开始从0以此递增。也就是说aa1= 0,bb1=1,那么下面怎么说

    const (
    aa1
    bb1 = iota
    cc1
    )
    结果是相同的,只要在这个组里面使用了iota,无论在哪里位置,都是从组第一个常量开始递增。
    它遇到const就会重置,例如:
    const (
    aa1
    bb1 = iota
    cc1 = iota
    )
    const (
    aa2 = iota
    bb2
    cc2
    )
    同一个组里面只存在一个iota,即使书写多个也是同一个,
    遇到了const,相当于界限,iota范围只在一个const范围内

  3. 小练习:利用iota,和常量,以及<<运算符实现计算机单位:B,KB,MB,GB的表示

    const (
    
    B float64 = 1 << (iota * 10)
    KB
    MB
    )
    定义为float是怕数据溢出,利用iota的自增长以及const组省略值后,后一个值跟随前一个值一样,这里是计算表达式的跟随,因为其中iota变化了,所以在计算时就变化了。实现了要求。
    
  4. 运算符:

    一元:^:数据加一取反,无论正负数。
         !:取非
    二元:^:异或
         &:与运算
         |:或运算
         &^:同样是位运算,第二个数的位如果是1,那么把第一 个数的对应位改为0,如果不是1,那么不变,这样结果是第一个数运算之后的结果。
    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值