### 7 运算符优先级
> 运算符是用来在程序运行时执行数学或逻辑运算的,在Go语言中,一个表达式可以包含多个运算符,当表达式中存在多个运算符时,就会遇到优先级的问题,此时应该先处理哪个运算符呢?
>
> 这个就由Go语言运算符的优先级来决定的。
>
> Go语言有几十种运算符,被分成十几个级别,有的运算符优先级不同,有的运算符优先级相同。
>
> 请看下表:
>
> | 优先级 | 分类 | 运算符 | 结合性 |
> | ------ | -------------- | ---------------------------------------------- | -------- |
> | 1 | 逗号运算符 | , | 从左到右 |
> | 2 | 赋值运算符 | =、+=、-=、*=、/=、 %=、 >=、 <<=、&=、^=、\|= | 从右到左 |
> | 3 | 逻辑或 | 丨丨 | 从左到右 |
> | 4 | 逻辑与 | && | 从左到右 |
> | 5 | 按位或 | 丨 | 从左到右 |
> | 6 | 按位异或 | ^ | 从左到右 |
> | 7 | 按位与 | & | 从左到右 |
> | 8 | 相等/不等 | ==、!= | 从左到右 |
> | 9 | 关系运算符 | <、<=、>、>= | 从左到右 |
> | 10 | 位移运算符 | <<、>> | 从左到右 |
> | 11 | 加法/减法 | +、- | 从左到右 |
> | 12 | 乘法/除法/取余 | *(乘号)、/、% | 从左到右 |
> | 13 | 单目运算符 | !、*(指针)、& 、++、--、+(正号)、-(负号) | 从右到左 |
> | 14 | 后缀运算符 | ( )、[ ]、-> | 从左到右 |
>
>
> **注意:**优先级值越大,表示优先级越高。
### 8 类型转换
> 数据有不同的类型,不同类型数据之间进行混合运算时必然涉及到类型的转换问题。
>
> 两种不同的类型在计算时,Go语言要求必须进行类型转换。
>
> 类型转换用于将一种数据类型的变量转换为另外一种类型的变量。
>
> Go 语言类型转换基本格式如下:
>
> ```go
> 数据类型(变量) //将变量转成指定的类型
> 数据类型(表达式) //将表达式转成指定的类型
> ```
有疑问加站长微信联系(非本文作者))