运算符的优先级
- 优先级表:
- 运算符有不同的优先级,所谓优先级就是表达式运算中的运算顺序。如下表,上一行的运算总是优先于下一行。
- 只有单目运算,赋值运算是从右往左运算的。
- 梳理了一个大概的优先级
- 1:括号,++, --
- 2: 单目运算
- 3:算术运算符
- 4:移位运算
- 5:关系运算符
- 6:位运算符
- 7:逻辑运算符
- 8:赋值运算符
- 9:逗号
其它运算符
- 其它运算符说明
- 案例演示:
//演示& 和 * 的使用
a := 123
fmt.Println("a的地址=", &a)
var ptr *int = &a
fmt.Println("ptr指向的值为", *ptr)
- 输出结果:
- 特别说明:
- Go语言明确不支持三元运算符
- 采用如下方式:
if expr {
n = trueVal
} else {
n = falseVal
}
- 演示案例,如何在golang中实现三元运算符的效果
//演示三元运算符
var n int
var i int = 10
var j int = 20
//传统三元运算符 n = i > j ? i : j
if i > j {
n = i
}else{
n = j
}
fmt.Println(n)
- 输出结果: