1.算术运算符
+ - * / % ++ --
使用细节:
(1)对于"/"号,整数除和小数除的区别;
(2)++和--只能独立使用,即a=a++是不允许的;没有++a和--a;if a++ > 0也是不合法的;
2.赋值运算符
= += -= *= /= %=
<<= >>= &= ^= |=
使用特点:
(1)运算顺序从右往左;
(2)赋值运算符的左边只能是变量,右边可以是表达式,变量和常量;
小例子:不用中间变量,交换两个变量的值:
package main import ( "fmt" ) func main() { var num1 int = 3 var num2 int = 5 fmt.Println(num1的值是:,num1) fmt.Println(num2的值是: num2 fmt.Println(num1 fmt.Println(num2 fmt.Println(我这个go版本可以直接使用和python一样语法:即num1,num2 = num2,num1
3.比较运算符
== != < > <= >=
4.逻辑运算符
&& 逻辑与:如果两边都为true,则返回true,否则返回false
|| 逻辑或:如果两边至少有一个true,则返回true,否则返回false
| 逻辑非:如果和条件相反的布尔值
注意:逻辑与第一个条件是false,第二个条件就不会判断;逻辑或如果第一个条件是true,则第二个条件不会被判断;
5.位运算符
& | ^ << >>
6.其他运算符
& *
golang不支持三元运算符,只能用if else进行实现;
var i int = 10 var j int = 20 var n int if i > j { n = i } else { n = j }运算符的优先级:
(1)只有单目运算符、赋值运算符是从右向左的;
以下优先级依次降低:
- () [] ++ --
- 单目运算(* & sizeof)
- 算术运算符(+ - * / %)
- 移位运算符(<< >>)
- 关系运算符(< > <= >= 在 != == 之前)
- 位运算符(依次按& ^ |)
- 逻辑运算符(依次&& ||)
- 赋值运算符(= += -= *= /= >>= <<= &= ^= |=)
- 逗号
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。