![On Java:中文版·基础卷](https://wfqqreader-1252317822.image.myqcloud.com/cover/337/53256337/b_53256337.jpg)
上QQ阅读APP看书,第一时间看更新
4.2 优先级
当多个操作符同时存在时,操作符的优先级决定了表达式的计算顺序。Java对计算顺序做了特别规定。最简单的规则就是先乘除后加减。程序员经常会忘记其他优先级规则,然后用括号来明确指定计算顺序。例如,下面的语句[1]和语句[2]:
![](https://epubservercos.yuewen.com/F9F485/31727349203472506/epubprivate/OEBPS/Images/58501_80_01.jpg?sign=1739364179-WYwx0saQOAK31BNf7aysJEi4pvuqR86Z-0-09b92508d0624ffb0b543eaef3a8b521)
这两个语句看起来基本相同,但是从输出结果可以知道,由于使用了括号,它们具有迥然不同的含义。
需要注意的是,System.out.println()语句中使用了操作符+。在这里+意味着字符串连接,而且如果需要,它还会执行字符串转换。当编译器看到一个字符串后面紧跟着一个+和一个非String类型的元素时,它会尝试着将这个非String类型的元素转换为String类型。如同上文输出结果展示的那样,它成功地为变量a和b处理了从int到String的类型转换。