Go 语言特性:与 Java 的对比及深入解析
1. Go 运算符优先级
Go 语言的运算符优先级相较于 Java 更为简单。在 Go 中,一元运算符的优先级高于二元运算符。
1.1 一元运算符优先级(从高到低)
- 括号包裹
( ... ) - 前缀运算符
+ - * & - 后缀运算符
[ ... ] ( ... )
需要注意的是,在 Go 中 ++ 和 -- 属于语句,并非运算符。
1.2 二元运算符优先级(从高到低)
-
/ % << >> & &^ -
+ - | ^ -
== != < <= > >= -
&& -
||
为了避免优先级带来的混淆,建议在不确定时使用括号 ( ... ) 明确优先级,尤其是对于一元运算符。此外,Go 拥有 Java 所没有的按位清除运算符 &^ ,表达式 x &^ y 实际上等同于 x
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



