SilenceHVK / blog

:books: :octocat: Github static blog post, experience the fun of using Issues.Welcome star( 静态博客文章,体验一下使用 Issues 的乐趣,欢迎 star )个人博客地址:blog.hvkcoder.me/love
https://github.com/SilenceHVK/Articles/issues
MIT License
231 stars 9 forks source link

【Golang 基础】Go 语言的操作符 #45

Open SilenceHVK opened 6 years ago

SilenceHVK commented 6 years ago

Go 语言的运算符

算术运算符

其中,++-- 不能用于赋值表达式, 如: count2 := count++;并且在 Go 语言中,不存在如:++count 表达式

关系运算符

逻辑运算符

位运算符

位运算符是对整数在内存中的二进制进行操作。

fmt.Println(3 & 4)  // 0

// 计算过程
//   0011     => 3 的二进制
//   0100     => 4 的二进制
// &
// ---------------------------
//   0000     => 0 的二进制
fmt.Println(3 | 4) // 7

// 计算过程
//   0011     => 3 的二进制
//   0100     => 4 的二进制
// &
// ---------------------------
//   0111     => 7 的二进制
fmt.Println(25 ^ 3) // 26

// 计算过程
//   0001 1001     => 25 的二进制
//   0000 0011     => 3 的二进制
// ^
// ---------------------------
//   0001 1010     => 26 的二进制
fmt.Println(3 << 3) // 24

// 计算过程
//      0000 0011     => 3 的二进制
//              3
// <<
// ---------------------------
//      0001 1000     => 24 的二进制
fmt.Println(3 >> 3) // 0

// 计算过程
//      0000 0011     => 3 的二进制
//              3
// >>
// ---------------------------
//      0000 0000     => 0 的二进制

赋值运算符