01 算术运算符

算术运算符有加号(+)、减号(-)、乘号(*)、除号(/)、取余(%),咱们申明两个变量 a 和 b,并别离赋值 10 和 5,通过代码,咱们演示算术运算符的用法。

func main() {  a := 10  b := 5  fmt.Println("a + b = ", a+b)  fmt.Println("a - b = ", a-b)  fmt.Println("a * b = ", a*b)  fmt.Println("a / b = ", a/b)  fmt.Println("a % b = ", a%b)}

02 ++ 和 --

自增和自减不是运算符,只能作为独立语句应用,不能用于表达式,不能放在变量名后面应用。通过代码,咱们演示 ++ 和 -- 的用法。

func main() {  a := 10  b := 5  a++  b--  fmt.Println("a++:", a)  fmt.Println("b--:", b)}

03 赋值运算符

为了简化表达式,与大多数语言雷同,Go 语言也提供了一些赋值运算符,有等号(=)、加等(+=)、减等(-=)、乘等(=)、除等(/)、取余等(%=),通过代码,咱们演示赋值运算符的用法。

func main() {  aa := 50  aa += 10  fmt.Println("aa = ", aa)  bb := 50  bb -= 10  fmt.Println("bb = ", bb)  cc := 50  cc *= 10  fmt.Println("cc = ", cc)  dd := 50  dd /= 10  fmt.Println("dd = ", dd)  ff := 50  ff %= 10  fmt.Println("ff = ", ff)}

04 关系运算符

关系运算符次要用于流程管制语句中,在 Go 语言中,关系运算符有大于(>)、小于(<)、大于等于(>=)、小于等于(<=)、等于等于(==)和不等于(!=),通过代码,咱们演示关系运算符的用法。

func main() {  if a > 5 && b > 5 {    fmt.Println("a > 5 且 b > 5")  }  if a > 5 || b > 5 {    fmt.Println("a > 5 或 b > 5")  }  if a > 5 && b >= 5 {    fmt.Println("a > 5 且 b >= 5")  }  if a == b {    fmt.Println("a == b")  }  if a != b {    fmt.Println("a != b")  }  boolean := false  if !boolean {    fmt.Println("非假既真")  }}

05 逻辑运算符

逻辑运算符,同样次要用于流程管制语句中,在 Go 语言中,逻辑运算符有且(&&)、或(||)、非(!),代码演示同下面的关系运算符代码。

06 & 和 *

取地址符(&)和指针运算符(*),不是所有对象都能进行取地址操作,然而变量总是能正确返回地址。指针运算符在等号右边时,能够更新指标对象,在等号左边时,能够获取指标对象。通过代码,咱们演示取地址符和指针运算符的用法。

func main() {  x := 50  y := &x  *y++  z := *y  fmt.Println("y = ", y)  fmt.Println("x = ", x)  fmt.Println("z = ", z)}

07 位运算符

位运算符是对整数在内存中的二进制位进行操作。因为篇幅起因,本文咱们不对位运算符做过多的介绍,在工作中,集体倡议尽量少用或不必位运算符,起因是代码可读性不好。如果你对位运算符感兴趣,可自行查阅相干材料。

08 优先级

最初,咱们来介绍一下运算符的优先级,一元运算符的优先级最高,二元运算符的优先级分五个级别,从高往低别离是:

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

雷同优先级的二元运算符,从左往右顺次计算。此外,咱们还能够应用小括号晋升某个表达式中运算符的优先级。


Go语言基础知识