
上QQ阅读APP看书,第一时间看更新
4-7 Java运算符优先级
在4-3-8节当讲解完简单的运算符后,曾经大致列出了运算符的优先级,下列是Java所有运算符的优先级表。

程序实例ch4_30.java:一个含多个运算符的程序应用,同时建议写法。下列第4行是一个表达式,如果读者初学尚不熟练,建议可以用括号方式改成第6行的写法。

执行结果

程序实例ch4_31.java:一个含多个运算符的程序应用。

执行结果

在执行上述第5行时,++i会在执行表达式前将i变为6,所以结果是:

得到上述结果后,然后执行j++,此时j也将变为6。在执行上述第7行时,++j会在执行表达式前将j变为7,所以结果是:

上述第7行运算后,然后会执行i++,然后i也将变为7。
程序实例ch4_32.java:一个含多个运算符的程序应用。

执行结果

可以用下列方式拆解第4行的执行顺序。

再次强调,如果不太熟练运算符优先级,可以使用括号方式处理,例如,程序实例的第6行。