Java でのパラメータ実行順序の保証は? 質問する

Java でのパラメータ実行順序の保証は? 質問する

で次の関数呼び出しがあるとしますC

fooFunc( barFunc(), bazFunc() );

barFuncとの実行順序はBazFunc指定されていないため、の前またはの前にbarFunc()が呼び出される場合があります。bazFunc()bazFunc()barFunc()C

Java関数の引数式の実行順序を指定しますか、それともC指定されていないのでしょうか?

ベストアンサー1

からJava言語仕様(表現について):

15.7.4 引数リストは左から右に評価される

メソッドまたはコンストラクターの呼び出し、あるいはクラス インスタンスの作成式では、引数式は括弧内にカンマで区切って記述できます。各引数式は、その右側にある引数式のどの部分よりも先に完全に評価されます。

おすすめ記事