Go-运算符总结(算术、关系、逻辑、赋值、位运算符等)

简介: Go-运算符总结(算术、关系、逻辑、赋值、位运算符等)

简介

运算符用于在程序运行时执行数学或逻辑运算。

Go 语言内置的运算符有:

  • 算术运算符
  • 关系运算符
  • 逻辑运算符
  • 位运算符
  • 赋值运算符
  • 其他运算符

算术运算符

                                                         算术运算符

image.png

注意:/有浮点型参与运算时会保留小数,10.0/4 结果为2.5;自增和自减必须独立使用,不能赋值给其他变量。

代码

  A,B := 10,20
  fmt.Println("A+B:",A+B)
  fmt.Println("A-B:",A-B)
  fmt.Println("A*B:",A*B)
  fmt.Println("B/A:",B/A)
  fmt.Println("B%A:",B%A)
  A++
  fmt.Println("A++:",A)
  A--
  fmt.Println("A--:",A)
  fmt.Println("float64(A)/10:",float64(A)/4)

                                                    2020062310470442.png

关系/比较运算符

                                       关系/比较运算符

image.png

代码

  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)
  fmt.Println("A<=B:",A<=B)

                                             2020062310470442.png

逻辑运算符

                                                   逻辑运算符

image.png

注意:对于&&运算符,左边的为false,右边的就不运行。对于||运算符,左边的为true,右边的就不运行。这是一种短路现象

代码

    C := true
    D := false
  fmt.Println("C&&D:",C&&D)
  fmt.Println("C||D:",C||D)
  fmt.Println("!(C&&D):",!(C&&D))

                                                     2020062310470442.png

位运算

image.png

代码

  A,B = 60,13
  fmt.Println("A&B:",A&B)
  fmt.Println("A|B:",A|B)
  fmt.Println("A^B:",A^B)
  fmt.Println("A<<2:",A<<2)
  fmt.Println("A>>2:",A>>2)

                                                            2020062310470442.png  

赋值运算符

                                              赋值运算符

image.png

代码

  var E int
  E = A+B
  fmt.Println("E:",E)
  E += A
  fmt.Println("E += A:",E)
  E -= A
  fmt.Println("E -= A:",E)
  E *= A
  fmt.Println("E *= A:",E)
  E /= A
  fmt.Println("E /= A:",E)
  E %= A
  fmt.Println("E %= A:",E)
  E <<= 2
  fmt.Println("E <<= 2:",E)
  E >>= 2
  fmt.Println("E >>= 2:",E)
  E &= 2
  fmt.Println("E &= 2:",E)
  E ^= 2
  fmt.Println("E ^= 2:",E)
  E |= 2
  fmt.Println("E |= 2:",E)

                                                 2020062310470442.png

其他运算符

                                                        其他运算符

                             image.png


代码

  ptr := &E
  fmt.Println("&E *(&E):",ptr,*ptr)

                                              2020062310470442.png

运算符优先级

                                                              运算符优先级

                                     image.png

博主喜欢加括号,懒得背...

思考题

以下程序会输出什么?

package main
import "fmt"
func output() int {
  fmt.Println("你好")
  return 1
}
func main() {
  a := 3
  if a < 2 && output() == 2{
    fmt.Println(a)
  }
  if a < 2 || output() == 1{
    fmt.Println(a)
  }
}

更多Go相关内容:Go-Golang学习总结笔记

有问题请下方评论,转载请注明出处,并附有原文链接,谢谢!如有侵权,请及时联系。




相关文章
|
3月前
|
Go 开发者
深入理解Go语言中的赋值与短声明
【8月更文挑战第31天】
22 0
|
6月前
|
Java Go 区块链
【Go语言专栏】Go语言中的运算符和表达式
【4月更文挑战第30天】Go语言是Google开发的编程语言,因其简单易学、高性能和出色的并发处理能力而备受关注,常用于云计算、微服务等领域。本文介绍了Go语言中的运算符和表达式,包括算术运算符(如加、减、乘、除、取模)、关系运算符(如等于、不等于、大于、小于等)、逻辑运算符(如逻辑与、或、非)以及位运算符(如按位与、或、异或、移位)。通过示例代码展示了这些运算符的使用方法。
57 1
|
6月前
|
存储 Go
Go 语言运算符
Go 语言运算符
29 0
|
JavaScript 前端开发 Go
一文彻底掌握Go语言运算符优先级秘密
一文彻底掌握Go语言运算符优先级秘密
137 0
|
6月前
|
Go
Golang深入浅出之-Go语言基础语法:变量声明与赋值
【4月更文挑战第20天】本文介绍了Go语言中变量声明与赋值的基础知识,包括使用`var`关键字和简短声明`:=`的方式,以及多变量声明与赋值。强调了变量作用域、遮蔽、初始化与零值的重要性,并提醒读者注意类型推断时的一致性。了解这些概念有助于避免常见错误,提高编程技能和面试表现。
80 0
|
6月前
|
供应链 Serverless Go
掌握Go语言:精通Go语言运算符,解锁编程新境界(11)
掌握Go语言:精通Go语言运算符,解锁编程新境界(11)
|
6月前
|
Go
Go语言的运算符
Go语言的运算符
30 0
|
6月前
|
Go 索引
Go 语言基本类型和运算符用法
Go 语言基本类型和运算符用法
30 0
|
6月前
|
Go
go语言中的运算符和表达式与对应的优先级
go语言中的运算符和表达式与对应的优先级
95 0
|
6月前
|
Go
Go 运算符
运算符用于对变量和值执行操作。 加号运算符(+)将两个值相加,如下面的示例所示: 示例代码:
108 2