datetime:2020/8/31 16:26
author:nzb

Go的运算符

1、算数运算符

运算符 说明
+ 相加
- 相减
* 相乘
/ 相除
% 求余= 被除数 - (被除数 / 除数) * 除数

fmt.Println(-10 % 3) // 结果是 -1

fmt.Println(10 % -3) // 结果是 1

1.2、注意事项

  • ++--在go语言中不是运算符

  • 除法注意,如果运算的数是整数,那么除后,去掉小数部分,保留整数部分,如果是浮点数,保留小数部分

  • 在golang中, ++ 和 -- 只能单独使用,错误的写法如下

    var i int = 8
    var a int
    a = i++  // 错误,i++只能单独使用
    a = i--  // 错误,i--只能单独使用
  • 同时在golang中,没有 ++i这样的操作
    var i int = 1
    ++i  // 错误
  • 正确的写法
    var i int = 1
    i++ //正确

2、关系运算符

运算符 说明
== 检查两个值是否相等,如果相等返回True,否则返回False
!= 检查两个值是否不相等,如果不相等返回True,否则返回False
> 检查左边值是否大于右边值,如果是返回True,否则返回False
>= 检查左边值是否大于等于右边值,如果是返回True,否则返回False
< 检查左边值是否小于右边值,如果是返回True,否则返回False
<= 检查左边值是否小于等于右边值,如果是返回True,否则返回False

3、逻辑运算符

运算符 说明
&& 逻辑 AND 运算符,如果两边的操作数都是True,则为True,否则为False
|| 逻辑 OR 运算符,如果两边的操作数有一个是True,则为True,否则为False
! 逻辑 NOT 运算符,如果条件为True,则为False,否则为True

短路用法,逻辑与前面为False后面的就不执行了,逻辑或前面的为True后面的也不执行了

4、赋值辑运算符

运算符 说明
= 简单的赋值运算符,将一个表达式的值赋给一个左值(从右往左计算赋值)
+= 相加后再赋值
-= 相减后再赋值
*= 相乘后再赋值
/= 相除后再赋值(跟上面算术运算符的注意事项相同)
%= 求余后再赋值

5、位运算符

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

运算符 说明
& 参与运算的两数各对应的二进位相与。(两位均为1才为1)
| 参与运算的两数各对应的二进位相或。(两位有一个为1就为1)
^ 参与运算的两数各对应的二进位相异或,当两对应的二进位相异时,结果为1,。(两位不一样则为1)
<< 左移n位就是乘以2的n次方。“a<<b”是把a的各二进位全部左移b位,高位丢弃,低位补0。
>> 左移n位就是除以2的n次方。“a>>b”是把a的各二进位全部右移b位。

results matching ""

    No results matching ""