go语言中的运算符和表达式与对应的优先级

简介: go语言中的运算符和表达式与对应的优先级

go语言中的运算符和表达式

表达式

Go 语言中常用的运算符和表达式有以下几种:

  1. 算术运算符
  • 加法运算:+
  • 减法运算:-
  • 乘法运算:*
  • 除法运算:/
  • 取余运算:%
  1. 关系运算符
  • 相等判断:==
  • 不等判断:!=
  • 大于判断:>
  • 小于判断:<
  • 大于等于判断:>=
  • 小于等于判断:<=
  1. 逻辑运算符
  • 与运算:&&
  • 或运算:||
  • 非运算:!
  1. 位运算符
  • 按位与运算:&
  • 按位或运算:|
  • 按位异或运算:^
  • 左移运算:<<
  • 右移运算:>>
  1. 赋值运算符
  • 简单赋值:=
  • 加赋值:+=
  • 减赋值:-=
  • 乘赋值:*=
  • 除赋值:/=
  • 取余赋值:%=
  • 位与赋值:&=
  • 位或赋值:|=
  • 位异或赋值:^=
  1. 其他运算符
  • 地址运算符:&
  • 取值运算符:*
  • 自增运算符:++
  • 自减运算符:–

优先级

在 Go 语言中,不同的运算符具有不同的优先级和结合性。以下是常用运算符的优先级从高到低的顺序:

  1. 地址、取值运算符:&、*
  2. 自增、自减运算符:++、–
  3. 按位取反运算符:^
  4. 乘法、除法、取余运算符:*、/、%
  5. 加法、减法运算符:+、-
  6. 移位运算符:<<、>>
  7. 按位与运算符:&
  8. 按位异或运算符:^
  9. 按位或运算符:|
  10. 关系运算符:==、!=、>、<、>=、<=
  11. 逻辑非运算符:!
  12. 逻辑与运算符:&&
  13. 逻辑或运算符:||

注意,在表达式中可以使用括号改变运算符的优先级和结合性。

相关文章
|
18天前
|
Go
go语言中的数据类型
go语言中的数据类型
13 0
|
23天前
|
Go 开发者
掌握Go语言:Go语言结构体,精准封装数据,高效管理实体对象(22)
掌握Go语言:Go语言结构体,精准封装数据,高效管理实体对象(22)
|
23天前
|
安全 Go
掌握Go语言:Go语言通道,并发编程的利器与应用实例(20)
掌握Go语言:Go语言通道,并发编程的利器与应用实例(20)
|
23天前
|
存储 缓存 安全
掌握Go语言:Go语言中的字典魔法,高效数据检索与应用实例解析(18)
掌握Go语言:Go语言中的字典魔法,高效数据检索与应用实例解析(18)
|
5天前
|
数据采集 存储 Go
使用Go语言和chromedp库下载Instagram图片:简易指南
Go语言爬虫示例使用chromedp库下载Instagram图片,关键步骤包括设置代理IP、创建带代理的浏览器上下文及执行任务,如导航至用户页面、截图并存储图片。代码中新增`analyzeAndStoreImage`函数对图片进行分析和分类后存储。注意Instagram的反爬策略可能需要代码适时调整。
使用Go语言和chromedp库下载Instagram图片:简易指南
|
23天前
|
存储 安全 Go
掌握Go语言:Go语言类型转换,无缝处理数据类型、接口和自定义类型的转换细节解析(29)
掌握Go语言:Go语言类型转换,无缝处理数据类型、接口和自定义类型的转换细节解析(29)
|
1天前
|
安全 Go 开发者
Golang深入浅出之-Go语言并发编程面试:Goroutine简介与创建
【4月更文挑战第22天】Go语言的Goroutine是其并发模型的核心,是一种轻量级线程,能低成本创建和销毁,支持并发和并行执行。创建Goroutine使用`go`关键字,如`go sayHello(&quot;Alice&quot;)`。常见问题包括忘记使用`go`关键字、不正确处理通道同步和关闭、以及Goroutine泄漏。解决方法包括确保使用`go`启动函数、在发送完数据后关闭通道、设置Goroutine退出条件。理解并掌握这些能帮助开发者编写高效、安全的并发程序。
10 1
|
1天前
|
人工智能 Go 调度
掌握Go并发:Go语言并发编程深度解析
掌握Go并发:Go语言并发编程深度解析
|
1天前
|
SQL 关系型数据库 MySQL
Golang数据库编程详解 | 深入浅出Go语言原生数据库编程
Golang数据库编程详解 | 深入浅出Go语言原生数据库编程
|
2天前
|
Go 开发者
Golang深入浅出之-Go语言流程控制:if、switch、for循环详解
【4月更文挑战第21天】本文介绍了Go语言中的流程控制语句,包括`if`、`switch`和`for`循环。`if`语句支持简洁的语法和初始化语句,但需注意比较运算符的使用。`switch`语句提供多分支匹配,可省略`break`,同时支持不带表达式的形式。`for`循环有多种形式,如基本循环和`for-range`遍历,遍历时修改原集合可能导致未定义行为。理解并避免易错点能提高代码质量和稳定性。通过实践代码示例,可以更好地掌握Go语言的流程控制。
11 3
Golang深入浅出之-Go语言流程控制:if、switch、for循环详解