Java中参数保证的执行顺序?

给定以下函数调用 :C

fooFunc( barFunc(), bazFunc() );

的执行顺序未指定,因此可以在 中调用之前或之前。barFuncBazFuncbarFunc()bazFunc()bazFunc()barFunc()C

是否指定函数参数表达式的执行顺序或类似顺序是否未指定?JavaC


答案 1

来自 Java 语言规范(关于表达式):

15.7.4 参数列表从左到右计算

在方法或构造函数调用或类实例创建表达式中,参数表达式可能显示在括号内,以逗号分隔。每个参数表达式似乎都在其右侧的任何参数表达式的任何部分之前被完全计算。


答案 2

推荐