7.Go语言运算符

2018-10-06  本文已影响0人  kukela

运算符的操作方法

  1. Go 语言中的运算符均是从左至右结合
  2. 运算符具有优先级(从高到低)

    * / % << >> & &^
    + - | ^
    == != < <= >= >
    <-
    &&
    ||

一元运算符

  1. 取反:!

二元运算符

  1. 四则运算:+ - * /
  2. 取余:%
  3. 左移右移:<< >>
 //用左移实现存储单位枚举
const (
    B uint64 = 1 << (iota * 10)
    KB
    MB
    GB
    TB
    PB
)
fmt.Println(B)
fmt.Println(KB)
fmt.Println(MB)
fmt.Println(GB)
fmt.Println(TB)
fmt.Println(PB)

//用左移实现只关注Create、Remove操作,排除其他操作
const (
    Create uint32 = 1 << (iota + 1)
    Write
    Rename
    Remove
)
op := Create | Remove   //需要关注的操作
fmt.Println(op & Write) //等于0代表是需要排除的操作
  1. 按位与:&
  2. 按位与非:&^(第二个值相对应位是1就是0,如果是0就取第一个值相对应位的数字)
/*
6:  0110
11: 1011
---------
&^  0100 = 4
*/
fmt.Println(6 &^ 11)
  1. 按位或:|
  2. 按位异或:^
  3. 逻辑运算符:== != <= >= > && ||

其他运算符

  1. 管道传入取出:<-
上一篇下一篇

猜你喜欢

热点阅读