操作符如是说
一、 十元操作符
二、 相互依赖操作符
2.1、数数操作符
2.2、位操作符
2.3、表达式操作符
2.4、较为操作符
2.5、方法论操作符操作符如是说
操作符用作在程序代码时继续执行微积分或方法论演算,Go 词汇内建的运算符有:
十元操作符
+十元乘法-正数相互依赖操作符
微积分操作符位操作符方法论操作符较为操作符Go词汇中大部份的相互依赖操作符共计六种错误率,如下表所示右图,它依照错误率递增的次序的排序:
错误率操作符5* / % << >> & &^4+ – | ^3== != < <= > >=2&&1\|\|在同一错误率,采用左优先选择紧密结合准则,但采用括弧能提高错误率,因此提议采用括弧明晰优先选择次序。
一、 十元操作符
十元的乘法和减法操作符叙述+十元乘法 (无效用)-正数对有理数、浮点和众数,+x是x,-x则是x 的正数。比如+(-8)得-8
&回到表达式储存门牌号&a; 将得出表达式的前述门牌号。*操作符表达式。*a; 是两个操作符表达式二、 相互依赖操作符
2.1、数数操作符
操作符叙述+相乘-相乘*相乘/相乘%求余/圣克雷潘特别注意:
1、微积分操作符+、-、*和/能在有理数、浮点和众数间搞混,但圣克雷潘操作符%仅用作有理数间的演算
???为何出现128呢,egon来先扫一下盲,估计会扫死99%的人
6、字符串也能采用+操作符
其中+操作符将两个字符串链接构造两个新字符串:2.2、位操作符
位操作符对有理数在内存中的二进制位进行操作(详解附录:位演算)
操作符叙述实例<<左移,左移n位是乘以2的n次方。”a<<b”是把a的各二进位全部左移b位,高位丢弃,低位补0。A << 2 结果为 240 ,二进制为 1111 0000>>右移,右移n位是除以2的n次方。 “a>>b”是把a的各二进位全部右移b位。A >> 2 结果为 15 ,二进制为 0000 1111&位演算AND,参与演算的两数各对应的二进位相与。 (两位均为1才为1)(A & B) 结果为 12, 二进制为 0000 1100||位演算OR,参与演算的两数各对应的二进位相或。 (两位有两个为1就为1)(A | B) 结果为 61, 二进制为 0011 1101^位演算XOR,参与演算的两数各对应的二进位相异或,当两对应的二进位相异时,结果为1。 (两位不一样则为1)(A ^ B) 结果为 49, 二进制为 0011 0001&^位清空 (AND NOT)2.3、表达式操作符
对数数操作符和位操作符,还紧密结合表达式符号书写成简化的表达式语句,比如+操作符还有两个与表达式相紧密结合的对应操作符+=
操作符叙述=简单的表达式操作符,将两个表达式的值赋给两个左值+=相乘后再表达式-=相乘后再表达式*=相乘后再表达式/=相乘后再表达式%=求余后再表达式<<=左移后表达式>>=右移后表达式&=按位与后表达式|=按位或后表达式^=按位异或后表达式特别注意1:
在Go语法中,表达式初始化和表达式表达式是两个不同的概念。下面为声明两个表达式之后的表达式 过程:
Go词汇的表达式表达式与多数词汇一致,但Go词汇中提供了C/C++程序员期盼多年的多重表达式功 能,比如下表所示面这个交换i和j表达式的语句:
多重表达式的特性在Go词汇库的实现中也被采用得相当充分,在如是说函数的多重回到值时, 将对其进行更加深入的介绍。总而言之,多重表达式功能让Go词汇与C/C++词汇相比能非常明显 地减少代码行数。多重表达式细节和原理参照官方文档golang官网:https://golang.org/ref/spec#Constants
特别注意2: 数值表达式也能支持++递增和–递增语句(译注:自增和自减是语句,而不是表达式或操作符,因此x = i++之类的表达式是错误的。语句只是继续执行指令,表达式是在继续执行计算会有回到值):
2.4、较为操作符
操作符叙述==检查两个值是否相等,如果相等回到 True 否则回到 False。!=检查两个值是否不相等,如果不相等回到 True 否则回到 False。>检查左边值是否大于右边值,如果是回到 True 否则回到 False。>=检查左边值是否大于等于右边值,如果是回到 True 否则回到 False。<检查左边值是否小于右边值,如果是回到 True 否则返回 False。<=检查左边值是否小于等于右边值,如果是回到 True 否则回到 False。两个相同的有理数类型能采用下面的相互依赖较为操作符进行较为;较为表达式的结果是布尔类型。
事实上,布尔型、数字类型和字符串等基本类型都是可较为的,也是说两个相同类型的值能用==和!=进行较为。此外,有理数、浮点和字符串能根据较为结果排序。许多其它类型的值可能是不可较为的,因此也就可能是不可排序的。对我们遇到的每种类型,我们需要保证准则的一致性。