golang 运算符

1.运算符

1.介绍

  • 运算符是一种特殊的符号,用以表示数据的运算、赋值和比较等
算数、
赋值、
比较/关系、
逻辑、
位、
其他运算符

2.算数运算符

  • 对数值类型的变量进行运算
运算符          运算
+             正号、字符串相加、加
-             负号/*/(取整)                       (整数之间相除,取整,小数会舍去,)
%             求余(取模)                     (取余数,小数会舍去)
++            自增                      只能单独使用,只用i++,而且++只能放在后面
--            自减                      只能单独使用,只用i--,而且--只能放在后面

=======================================================================
i = i++  // 错误用法,i++ 只能单独使用

3.关系运算符

  1. 又叫比较运算符,
  2. 关系运算符: 结果是bool型,不是true就是false
  3. 关系运算式:
    • 关系运算符组成的表达式,
    • 用在 if 结构结构条件中或者循环结构条件中
    • 又叫关系表达式
  4. 结果是:bool类型,不是true就是false
运算符        运算
 ==          相等
 !=         不等
 <           小于
 >           大于
 <=          小于等于
 >=          大于等于

4.逻辑运算符

  • 用于连接多个条件(一般来讲就是关系表达式),
  • 结果:一个bool值
运算符                 运算
&&                    逻辑与,两边均为真,才是真              短路与,第一个条件为假,第二个就不会执行
||                    逻辑或,一个为真就是真                  短路或,第一个条件为真,第二个就不会执行
|                     逻辑非, 条件是true,则逻辑为false   

5.位运算符

在计算机运算的时候,都是以补码的方式来运算的

运算符         运算
&         按位与  双目运算,功能是参与运算的两位数各对应的二进制相与,规则:同时为1,结果为1
|         按位或  双目运算,功能是参与运算的两位数各对应的二进制相或,规则:一个位1,结果为1
^         按位非  双目运算,功能是参与运算的两位数各对应的二进制相非。规则:二进位不同,结果为1

6.移位运算符

<<        左位    双目运算,把<<左侧的运算数的各二进位全部左移若干位,高位丢去,低位补0,左移n位就是乘以2的n次方
>>        右移    双目运算,把>>左侧的运算数的各二进制全部右移若干位,右移n位就是除以2的n次方

// 备注:就把二进制的补码,被冻结成尺子,让整个尺子进行》箭头的方向移动,对,就是整体移动
1.右移运算符:低位溢出,符号位不变,并用符号位补溢出的高位
2.左移运算符:符号位不变,低位补0

7.赋值运算

  • 运算顺序从左到右
  • 赋值运算左边——>只能是变量,右边随意
  • 赋值运算符就是将某个运算后的值,赋给指定的变量。
运算符      运算
=           简单的赋值运算
+=          相加后再赋值
-=          相减后再赋值
*=          相见后再赋值
/=          相减后再赋值
%=          取余后再赋值

二进制赋值

运算符          运算
<<=            左移后赋值
>>=            右移后赋值
&=             按位与后赋值
^=             按位异后赋值
!=            按位或后赋值

8.其他运算符

运算符       运算
&          返回变量储存地址(给出变量的实际地址)
*          指针变量       (一个指针变量)

9.特别说明

  • go语言明确说明不支持三元运算

10.运算符的优先级

  • 运算符:是用来在程序运行时执行数学或逻辑运算的
  • 优先级:就是当多个运算符出现在同一个表达式中时,先执行哪个运算符。
  • Go语言中大部分运算符的优先级和数学中是一样的,
  • 推荐使用 括号
优先级分类运算符结合性
1逗号运算符,从左到右
2赋值运算符=、+=、-=、*=、/=、 %=、 >=、 <<=、&=、^=、|=从右到左
3逻辑或||从左到右
4逻辑与&&从左到右
5按位或|从左到右
6按位异或^从左到右
7按位与&从左到右
8相等/不等==、!=从左到右
9关系运算符<、<=、>、>=从左到右
10位移运算符<<、>>从左到右
11加法/减法+、-从左到右
12乘法/除法/取余*(乘号)、/、%从左到右
13单目运算符!、*(指针)、& 、++、–、+(正号)、-(负号)从右到左
14后缀运算符( )、[ ]、->从左到右

注意:

  • 优先级级别越大的,先运算,记不住的就加括号
  • 计算顺序从右到左的只有两个:赋值运算符、单目运算符

大概运算符

  1. 括号,++,–
  2. 单目运算
  3. 算数运算符
  4. 移位运算
  5. 关系运算符
  6. 位运算符
  7. 逻辑运算符
  8. 赋值运算符
  9. 逗号

跳转

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值