看肝胆挂什么科| 言字五行属什么| 工体是什么意思| 喉咙长息肉有什么症状| 什么情况下挂疼痛科| 生闷气是什么意思| 跌打损伤用什么药好得快| 五行缺木是什么意思| 外甥是什么意思| 铁树开花是什么意思| 糜烂性胃炎吃什么药效果好| 囟门闭合早有什么影响| 天空为什么是蓝色的| 左卡尼汀口服溶液主要治疗什么| 腮帮子长痘痘是什么原因| 肛裂是什么原因引起的| 7月5号什么星座| 1950年属什么生肖| 小孩流鼻血什么原因| 什么的草叶| 活化部分凝血活酶时间偏高是什么意思| 什么不动| 女生喜欢男生什么行为| 冰箱保鲜室不制冷是什么原因| 身上总是痒是什么原因| 嗓子痛吃什么药| 吃什么能流产| 不可思议的意思是什么| 杀手锏是什么意思| 富勒烯是什么| 什么病才查凝血四项呢| 喝茶叶水有什么好处和坏处| 东成西就是什么生肖| 马华念什么| 六月是什么季节| 嘎哈是什么意思| daddy什么意思| 肝火旺是什么意思| 九眼天珠适合什么人戴| 硫酸镁注射有什么作用| 独美是什么意思| 耳鸣是什么原因导致的| 二甲双胍什么时候吃| 熊喜欢吃什么食物| 枉然是什么意思| 桑蚕丝被有什么好处| 哈字五行属什么| 立春是什么生肖| 桃子什么季节成熟| 手指上长毛是什么原因| 呆小症是缺乏什么激素| 劫财代表什么| 乌龟吃什么食物| 回锅肉是什么肉| 1级高血压是什么意思| 为什么会下雨| 花胶有什么功效| 组织部副部长是什么级别| ch4是什么气体| 5月24日什么星座| 夏天喝什么粥| 泥石流是什么| 心律不齐是什么原因| 省检察长什么级别| 胃角在什么位置图片| 大便溏薄是什么意思| 南京为什么那么多梧桐树| 高血糖吃什么水果最好| 男宝胶囊为什么不建议吃| o型血和b型血生的孩子是什么血型| 手臂肌肉跳动是什么原因| 牛肉什么馅的饺子好吃| 河虾吃什么| 吃什么不胖反而瘦| 左侧附件区囊性回声是什么意思| 明月对什么| 姨妈可以吃什么水果| 电商五行属什么| 官杀是什么意思| 睡觉口苦是什么原因| 拔牙前需要做什么检查| 雪花粉是什么面粉| 什么是交感神经| 右手手背有痣代表什么| 男人有腰窝意味着什么| 空调除湿是什么标志| 斑秃是什么原因造成的| 慢性咽炎吃什么药好| 挂号是什么意思| 睾丸疼什么原因| 奔三是什么意思| 266什么意思| 指甲上有竖条纹是什么原因| 今年什么时候进伏天| 李小龙是什么生肖| 月经血块多是什么原因| 比值是什么| 吃东西没有味道是什么原因| 解表是什么意思| 孩子记忆力差是什么原因| 人贫血吃什么补得快| 梦见被蛇追是什么意思| 小肝功能是检查什么| 双红出彩是什么生肖| 2月6号是什么星座| 牛肚是牛的什么部位| 吃什么胸大| 秦始皇原名叫什么| 什么是血小板| 老专家药膏有什么功效| 为什么二楼比三楼好| 精神恍惚是什么意思| 口水是甜的是什么原因| 右半边头痛是什么原因| 鸭跖草用什么除草剂| 什么时候种香菜| 节气是什么意思| 葡萄球菌是什么| 剑玉是什么| 千与千寻是什么意思| 为什么很多人不去庐山| 口干舌燥吃什么食物好| 生日送什么礼物最好| 什么样的智齿不需要拔| 经常催吐有什么危害| 木牛流马是什么意思| 吃什么减肥瘦肚子| 烫发对身体有什么危害| 尿蛋白尿潜血同时出现说明什么| 红细胞分布宽度偏低是什么原因| 尿胆原norm是什么意思| 兰花用什么肥料最好| 乙肝五项15阳性是什么意思| 三公经费指什么| 贿赂是什么意思| 交杯酒是什么意思| 文气是什么意思| 高烧不退是什么原因| 游击战是什么意思| 桑葚泡酒有什么功效| ivy是什么意思| 吃维生素b6有什么好处和副作用| 精神分裂吃什么药| 血癌是什么病| 为什么手淫很快就射| 低血糖会出现什么症状| et是什么意思| 扫码是什么意思| 做春梦是什么意思| 早早孕有什么征兆| glu是什么氨基酸| 五脏六腑什么意思| 一个山一个脊念什么| 脾大吃什么可以缩脾| 孕妇建档需要检查什么| 刘强东属什么生肖| 幽默是什么意思| gloomy是什么意思| 一什么手表| is是什么组织| gree是什么牌子| 俄罗斯人是什么人种| 图腾是什么意思| 痔疮术后吃什么恢复快| 佛度有缘人是什么意思| 血压低吃什么水果最好| 土羊是什么字| 盆底肌松弛有什么影响| 建执位是什么意思| 胰岛素是什么器官分泌的| 胎盘附着于子宫前壁是什么意思| 什么是换手率| 内分泌失调吃什么| 霉菌性阴道炎用什么药好| 天灵盖是什么意思| 什么是渎职| 乳房疼痛应该挂什么科| 月经来吃什么水果好| ast什么意思| 甲状腺应该挂什么科| 肠炎有什么症状| g50是什么高速| 意味深长的意思是什么| 梦见大蒜是什么意思| 指甲油用什么能洗掉| 特务是什么| 什么时候上环是最佳时期| 女生吃什么能淡化胡子| 09年的牛是什么命| 九七年属什么| 什么情况下需要打狂犬疫苗| 小孩小便红色是什么原因| 南瓜不能和什么食物一起吃| 抑郁症是什么病| 预防高原反应吃什么药| 两三分钟就射什么原因| 吃什么补阳气最快| 什么是收缩压和舒张压| 飒的意思是什么| 湿疹是什么引起的| 白带发黄有异味是什么原因| 听字五行属什么| 2003年出生属什么| 消防队属于什么编制| 蝴蝶效应是什么| 北京市副市长是什么级别| 灰色地带是什么意思| 大脖子病有什么症状| 隆科多为什么不姓佟| 佩戴狼牙有什么好处| 乙基麦芽酚是什么| 套马的汉子你威武雄壮是什么歌| 你是谁为了谁是什么歌| ppt是什么意思| 股东是什么意思| 请问尿路感染吃什么药最好| 面色无华什么意思| 吃苹果有什么好处和功效| 肿瘤切开了里面是什么| 手比脸白是什么原因| 不知道干什么| 什么情况挂全科门诊| 口蘑不能和什么一起吃| 什么是还原糖| 手脚冰凉吃什么好| 手脚麻木吃什么药| 为什么喝水血糖也会高| 梨子是什么季节的水果| 儿童语言迟缓挂什么科| 合欢是什么意思| 大便糊状什么原因| 睡觉后腰疼是什么原因引起的| 舌头起泡是什么原因引起的| 痛风能喝什么饮料| 灰白组织是什么意思| 鼠目寸光是什么意思| 什么食物清肺化痰| 什么样的阳光填形容词| 梦见小孩是什么| mrcp是什么检查| 沉冤得雪是什么意思| 眼镜轴位是什么意思| 孕妇吃什么钙片| 珞字五行属什么| 怀孕初期吃什么菜| 1979是什么年| 子午相冲是什么生肖| 梦见花生是什么意思| 狗狗感冒了吃什么药| 最近嗜睡是什么原因| 什么是肠镜检查| 什么于怀| 转氨酶高挂什么科| 血糖高可以喝什么粥| 7月6日什么星座| 闻所未闻是什么意思| 小心的什么| 口红是什么做的| 辐照食品什么意思| 白气是什么物态变化| 做宫颈筛查能查出什么| 考试前吃什么能让大脑发挥最佳| tc是什么| 2009年五行属什么| 百度
Go language tutorial manual / Go 语言运算符

《高达Versus》加入双头龙高达 最强机体大乱斗

Go 语言运算符

百度 党的十九大进一步确立习近平总书记党中央的核心、全党的核心地位,这是众望所归的历史性选择,是党之大幸、国之大幸、民之大幸。

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

Go 语言内置的运算符有:

  • 算术运算符

  • 关系运算符

  • 逻辑运算符

  • 位运算符

  • 赋值运算符

  • 其他运算符

接下来让我们来详细看看各个运算符的介绍。


算术运算符

下表列出了所有Go语言的算术运算符。假定 A 值为 10,B 值为 20。

运算符描述实例
+相加A + B 输出结果 30
-相减A - B 输出结果 -10
*相乘A * B 输出结果 200
/相除B / A 输出结果 2
%求余B % A 输出结果 0
++自增A++ 输出结果 11
--自减A-- 输出结果 9

以下实例演示了各个算术运算符的用法:

package main

import "fmt"

func main() {

   var a int = 21
   var b int = 10
   var c int

   c = a + b
   fmt.Printf("第一行 - c 的值为 %d\n", c )
   c = a - b
   fmt.Printf("第二行 - c 的值为 %d\n", c )
   c = a * b
   fmt.Printf("第三行 - c 的值为 %d\n", c )
   c = a / b
   fmt.Printf("第四行 - c 的值为 %d\n", c )
   c = a % b
   fmt.Printf("第五行 - c 的值为 %d\n", c )
   a++
   fmt.Printf("第六行 - c 的值为 %d\n", a )
   a--
   fmt.Printf("第七行 - c 的值为 %d\n", a )
}

以上实例运行结果:

第一行 - c 的值为 31
第二行 - c 的值为 11
第三行 - c 的值为 210
第四行 - c 的值为 2
第五行 - c 的值为 1
第六行 - c 的值为 22
第七行 - c 的值为 21

关系运算符

下表列出了所有Go语言的关系运算符。假定 A 值为 10,B 值为 20。

运算符描述实例
==检查两个值是否相等,如果相等返回 True 否则返回 False。(A == B)  为 False
!=检查两个值是否不相等,如果不相等返回 True 否则返回 False。(A != B) 为 True
>检查左边值是否大于右边值,如果是返回 True 否则返回 False。(A > B) 为 False
<检查左边值是否小于右边值,如果是返回 True 否则返回 False。(A < B) 为 True
>=检查左边值是否大于等于右边值,如果是返回 True 否则返回 False。(A >= B) 为 False
<=检查左边值是否小于等于右边值,如果是返回 True 否则返回 False。(A <= B) 为 True

以下实例演示了关系运算符的用法:

package main

import "fmt"

func main() {
   var a int = 21
   var b int = 10

   if( a == b ) {
      fmt.Printf("第一行 - a 等于 b\n" )
   } else {
      fmt.Printf("第一行 - a 不等于 b\n" )
   }
   if ( a < b ) {
      fmt.Printf("第二行 - a 小于 b\n" )
   } else {
      fmt.Printf("第二行 - a 不小于 b\n" )
   } 
   
   if ( a > b ) {
      fmt.Printf("第三行 - a 大于 b\n" )
   } else {
      fmt.Printf("第三行 - a 不大于 b\n" )
   }
   /* Lets change value of a and b */
   a = 5
   b = 20
   if ( a <= b ) {
      fmt.Printf("第四行 - a 小于等于  b\n" )
   }
   if ( b >= a ) {
      fmt.Printf("第五行 - b 大于等于 b\n" )
   }
}

以上实例运行结果:

第一行 - a 不等于 b
第二行 - a 不小于 b
第三行 - a 大于 b
第四行 - a 小于等于  b
第五行 - b 大于等于 b

逻辑运算符

下表列出了所有Go语言的逻辑运算符。假定 A 值为 True,B 值为 False。

运算符描述实例
&&逻辑 AND 运算符。 如果两边的操作数都是 True,则条件 True,否则为 False。(A && B) 为 False
||逻辑 OR 运算符。 如果两边的操作数有一个 True,则条件 True,否则为 False。(A || B) 为 True
!逻辑 NOT 运算符。 如果条件为 True,则逻辑 NOT 条件 False,否则为 True。!(A && B) 为 True

以下实例演示了逻辑运算符的用法:

package main

import "fmt"

func main() {
   var a bool = true
   var b bool = false
   if ( a && b ) {
      fmt.Printf("第一行 - 条件为 true\n" )
   }
   if ( a || b ) {
      fmt.Printf("第二行 - 条件为 true\n" )
   }
   /* 修改 a 和 b 的值 */
   a = false
   b = true
   if ( a && b ) {
      fmt.Printf("第三行 - 条件为 true\n" )
   } else {
      fmt.Printf("第三行 - 条件为 false\n" )
   }
   if ( !(a && b) ) {
      fmt.Printf("第四行 - 条件为 true\n" )
   }
}

以上实例运行结果:

第二行 - 条件为 true
第三行 - 条件为 false
第四行 - 条件为 true

位运算符

位运算符对整数在内存中的二进制位进行操作。

下表列出了位运算符 &, |, 和 ^ 的计算:

pqp & qp | qp ^ q
00000
01011
11110
10011

假定 A = 60;  B = 13; 其二进制数转换为:

A = 0011 1100

B = 0000 1101

-----------------

A&B = 0000 1100

A|B = 0011 1101

A^B = 0011 0001

~A  = 1100 0011


C 语言支持的位运算符如下表所示。假定 A 为60,B 为13:

运算符描述实例
&按位与运算符"&"是双目运算符。 其功能是参与运算的两数各对应的二进位相与。(A & B) 结果为 12,  二进制为 0000 1100
|按位或运算符"|"是双目运算符。 其功能是参与运算的两数各对应的二进位相或(A | B) 结果为 61, 二进制为 0011 1101
^按位异或运算符"^"是双目运算符。 其功能是参与运算的两数各对应的二进位相异或,当两对应的二进位相异时,结果为1。(A ^ B) 结果为 49, 二进制为 0011 0001
<<左移运算符"<<"是双目运算符。左移n位就是乘以2的n次方。 其功能把"<<"左边的运算数的各二进位全部左移若干位,由"<<"右边的数指定移动的位数,高位丢弃,低位补0。A << 2 结果为 240 ,二进制为 1111 0000
>>右移运算符">>"是双目运算符。右移n位就是除以2的n次方。 其功能是把">>"左边的运算数的各二进位全部右移若干位,">>"右边的数指定移动的位数。A >> 2 结果为 15 ,二进制为 0000 1111

以下实例演示了逻辑运算符的用法:

package main

import "fmt"

func main() {

   var a uint = 60	/* 60 = 0011 1100 */  
   var b uint = 13	/* 13 = 0000 1101 */
   var c uint = 0          

   c = a & b       /* 12 = 0000 1100 */ 
   fmt.Printf("第一行 - c 的值为 %d\n", c )

   c = a | b       /* 61 = 0011 1101 */
   fmt.Printf("第二行 - c 的值为 %d\n", c )

   c = a ^ b       /* 49 = 0011 0001 */
   fmt.Printf("第三行 - c 的值为 %d\n", c )

   c = a << 2     /* 240 = 1111 0000 */
   fmt.Printf("第四行 - c 的值为 %d\n", c )

   c = a >> 2     /* 15 = 0000 1111 */
   fmt.Printf("第五行 - c 的值为 %d\n", c )
}

以上实例运行结果:

第一行 - c 的值为 12
第二行 - c 的值为 61
第三行 - c 的值为 49
第四行 - c 的值为 240
第五行 - c 的值为 15

赋值运算符

下表列出了所有Go语言的赋值运算符。

运算符描述实例
=简单的赋值运算符,将一个表达式的值赋给一个左值C = A + B 将 A + B 表达式结果赋值给 C
+=相加后再赋值C += A 等于 C = C + A
-=相减后再赋值C -= A 等于 C = C - A
*=相乘后再赋值C *= A 等于 C = C * A
/=相除后再赋值C /= A 等于 C = C / A
%=求余后再赋值C %= A 等于 C = C % A
<<=左移后赋值C <<= 2 等于  C = C << 2
>>=右移后赋值C >>= 2 等于  C = C >> 2
&=按位与后赋值C &= 2 等于  C = C & 2
^=按位异或后赋值C ^= 2 等于  C = C ^ 2
|=按位或后赋值C |= 2 等于  C = C | 2

以下实例演示了赋值运算符的用法:

package main

import "fmt"

func main() {
   var a int = 21
   var c int

   c =  a
   fmt.Printf("第 1 行 - =  运算符实例,c 值为 = %d\n", c )

   c +=  a
   fmt.Printf("第 2 行 - += 运算符实例,c 值为 = %d\n", c )

   c -=  a
   fmt.Printf("第 3 行 - -= 运算符实例,c 值为 = %d\n", c )

   c *=  a
   fmt.Printf("第 4 行 - *= 运算符实例,c 值为 = %d\n", c )

   c /=  a
   fmt.Printf("第 5 行 - /= 运算符实例,c 值为 = %d\n", c )

   c  = 200; 

   c <<=  2
   fmt.Printf("第 6行  - <<= 运算符实例,c 值为 = %d\n", c )

   c >>=  2
   fmt.Printf("第 7 行 - >>= 运算符实例,c 值为 = %d\n", c )

   c &=  2
   fmt.Printf("第 8 行 - &= 运算符实例,c 值为 = %d\n", c )

   c ^=  2
   fmt.Printf("第 9 行 - ^= 运算符实例,c 值为 = %d\n", c )

   c |=  2
   fmt.Printf("第 10 行 - |= 运算符实例,c 值为 = %d\n", c )

}

以上实例运行结果:

第 1 行 - =  运算符实例,c 值为 = 21
第 2 行 - += 运算符实例,c 值为 = 42
第 3 行 - -= 运算符实例,c 值为 = 21
第 4 行 - *= 运算符实例,c 值为 = 441
第 5 行 - /= 运算符实例,c 值为 = 21
第 6行  - <<= 运算符实例,c 值为 = 800
第 7 行 - >>= 运算符实例,c 值为 = 200
第 8 行 - &= 运算符实例,c 值为 = 0
第 9 行 - ^= 运算符实例,c 值为 = 2
第 10 行 - |= 运算符实例,c 值为 = 2

其他运算符

下表列出了Go语言的其他运算符。

运算符描述实例
&返回变量存储地址&a; 将给出变量的实际地址。
*指针变量。*a; 是一个指针变量

以下实例演示了其他运算符的用法:

package main

import "fmt"

func main() {
   var a int = 4
   var b int32
   var c float32
   var ptr *int

   /* 运算符实例 */
   fmt.Printf("第 1 行 - a 变量类型为 = %T\n", a );
   fmt.Printf("第 2 行 - b 变量类型为 = %T\n", b );
   fmt.Printf("第 3 行 - c 变量类型为 = %T\n", c );

   /*  & 和 * 运算符实例 */
   ptr = &a	/* 'ptr' 包含了 'a' 变量的地址 */
   fmt.Printf("a 的值为  %d\n", a);
   fmt.Printf("*ptr 为 %d\n", *ptr);
}

以上实例运行结果:

第 1 行 - a 变量类型为 = int
第 2 行 - b 变量类型为 = int32
第 3 行 - c 变量类型为 = float32
a 的值为  4
*ptr 为 4

运算符优先级

有些运算符拥有较高的优先级,二元运算符的运算方向均是从左至右。下表列出了所有运算符以及它们的优先级,由上至下代表优先级由高到低:

优先级运算符
7^ !
6* / % << >> & &^
5+ - | ^
4== != < <= >= >
3<-
2&&
1||

当然,你可以通过使用括号来临时提升某个表达式的整体运算优先级。

以上实例运行结果:

package main

import "fmt"

func main() {
   var a int = 20
   var b int = 10
   var c int = 15
   var d int = 5
   var e int;

   e = (a + b) * c / d;      // ( 30 * 15 ) / 5
   fmt.Printf("(a + b) * c / d 的值为 : %d\n",  e );

   e = ((a + b) * c) / d;    // (30 * 15 ) / 5
   fmt.Printf("((a + b) * c) / d 的值为  : %d\n" ,  e );

   e = (a + b) * (c / d);   // (30) * (15/5)
   fmt.Printf("(a + b) * (c / d) 的值为  : %d\n",  e );

   e = a + (b * c) / d;     //  20 + (150/5)
   fmt.Printf("a + (b * c) / d 的值为  : %d\n" ,  e );  
}

以上实例运行结果:

(a + b) * c / d 的值为 : 90
((a + b) * c) / d 的值为  : 90
(a + b) * (c / d) 的值为  : 90
a + (b * c) / d 的值为  : 50
马来西亚属于什么国家 考生号是什么 低压高会引起什么后果 结婚登记需要什么 闭口是什么样子图片
气虚用什么泡水喝好 上天眷顾是什么意思 粉黛是什么意思 尿气味重是什么原因 甲状腺阳性是什么意思
小肠镜什么情况下需要做 羊与什么生肖相合 坐月子能吃什么蔬菜 学籍卡是什么样子图片 健康证查什么
大牛是什么意思 9月10日是什么节 子宫肌瘤挂什么科室 脚发麻什么原因 尿酸检查什么项目
胃镜预约挂什么科creativexi.com 冠状动脉粥样硬化性心脏病吃什么药hcv7jop9ns4r.cn 清明节一般开什么生肖hcv7jop6ns9r.cn 吃小米粥有什么好处和坏处hcv9jop7ns0r.cn 菊花脑是什么菜hcv8jop8ns6r.cn
四月初八是什么星座hcv8jop5ns5r.cn 大便秘结是什么意思hcv7jop5ns6r.cn 对峙什么意思hcv8jop6ns6r.cn 婴儿什么时候会走路hcv8jop7ns7r.cn dlco是医学上什么意思hcv9jop0ns9r.cn
黄热病是什么病hcv8jop1ns9r.cn 右肩膀疼痛预示什么病hcv8jop2ns7r.cn 11月16号是什么星座hcv8jop8ns5r.cn 葫芦代表什么生肖aiwuzhiyu.com 塞翁失马什么意思hcv8jop8ns9r.cn
黄昏是什么时辰hcv9jop1ns1r.cn 全麦粉和小麦粉的区别是什么sanhestory.com 刚出生的小猫吃什么hcv8jop8ns6r.cn 履新是什么意思hcv8jop1ns0r.cn 减肥不能吃什么hcv8jop5ns6r.cn
百度