Golang第三弹-运算符
【Golang】第三弹—-运算符
笔上得来终觉浅,绝知此事要躬行
🔥 个人主页:
🔥 所属专栏:
🌷追光的人,终会万丈光芒
🎉欢迎大家点赞👍评论📝收藏⭐文章
一、运算符介绍
- 运算符是一种特殊的符号,用来表示数据的运算,赋值和比较等
- 运算符分为以下几个大类 (1)算术运算符 (2)赋值运算符 (3)关系运算符 (4)逻辑运算符 (5)位运算符 (6)其他运算符
二、算术运算符
2.1基本介绍
算术运算符是用来对数值类型的变量进行运算的
2.2算术运算符总览
运算符 | 运算 |
---|---|
+ | 加 |
- | 减 |
* | 乘 |
/ | 除 |
% | 取模 |
++ | 自增 |
-- | 自减 |
+ | 正号 |
- | 负号 |
+ | 字符串拼接 |
2.3使用细节
(1)对于除号‘/’有两种用法: 当除号两边全是整数时,则结果也为整数; 当除号两边只要有一边是浮点数,那么结果就是浮点数 (2)用取模符号进行运算时,其本质为a%b=a-a/b*b,故其两边必须是整数 (3)Go的自增自减只能作为一个独立语言使用,且只能写在变量的后面,即只有后置++或后置– var i int =10 a:=i++//编译报错,i++只能单独一句 b:=i–//同上 if i++>10{ //错误,i++只能单独使用 fmt.Printf("..") }
三、关系运算符
3.1基本介绍
- 关系运算符的结果都是布尔型,要么为true,要么为false
- 关系运算符常在if条件或循环条件中出现
3.2关系运算符总览
运算符 | 运算 |
---|---|
== | 相等于 |
!= | 不等于 |
< | 小于 |
| 大于 <=| 小于等于 =| 大于等于
3.3使用细节
(1)关系运算符组成的表达式,我们称为关系表达式 (2)关系表达式的结果要么为true,要么为false (3)==不能写成=,=是赋值
四、逻辑运算符
4.1基本介绍
用于连接多个条件(多个关系表达式),其结果也是bool值
4.2逻辑运算符总览
运算符 | 说明 |
---|---|
&& | 逻辑与 |
! | 逻辑非 |
4.3使用细节
(1)&&:当第一个条件为false时,整个表达式为false,且第二个条件不执行 (2)||:当第一个条件为true时,整个表达式为true,且第二个条件不执行
五、赋值运算符
5.1基本介绍
赋值运算符就是某个运算后的值,赋给指定的变量
5.2赋值运算符分类
(1)基本赋值运算符:= (2)复合赋值运算符:+=、-=、*=、/=、%=等
5.3赋值运算符特点
(1)运算顺序从右到左 (2)赋值运算符的左边只能是变量,右边可以是变量、表达式、常量值 (3)复合赋值运算符等价于下面的效果,如:a+=3等价于a=a+3
5.4例题
有两个变量a,b,要求对其进行交换,但是不允许使用中间变量,最终打印结果 示例: func main(){ a:=5 b:=3 //交换 a=a^b b=a^b a=a^b fmt.Printf(“交换后:a=%v,b=%v”,a,b) }
六、位运算符
Go中有 6个位运算(&、|、^、&^、«、»)。 (1)按位与 &:两位全为1,结果才为1; (2)按位或|:只要有一个1,结果就为1; (3)按位异或^:相同为0,相异为1; (4)按位清除 &^:等价于x&(^y),将y的二进制位为1的位置清除为0 (5)左移 «:符号位不变,低位补0,相当于乘2; (6)右移 »:低位溢出,符号位不变,并用符号位补溢出的高位; 注意: 位运算是指二进制位。
七、运算符优先级
- 一元运算符优先级最高
- 乘除优先级高于加减
- 位运算符优先级低于算术运算符,但高于比较运算符
- 比较运算符优先级高于逻辑运算符
- 赋值运算符优先级最低,但高于逗号,
结语
感谢您的耐心阅读,希望这篇博客能够为您带来新的视角和启发。如果您觉得内容有价值,不妨动动手指,给个赞👍,让更多的朋友看到。同时,点击关注🔔,不错过我们的每一次精彩分享。若想随时回顾这些知识点,别忘了收藏⭐,让知识触手可及。您的支持是我们前进的动力,期待与您在下一次分享中相遇!
路漫漫其修远兮,吾将上下而求索。