-2

次の例のどれがより高いパフォーマンスをもたらすかを知る必要がありますか?

Object O = someValue;
if (condition){
    //statements
    //statements
} else {
    //statements
    //statements
}

または

Object O;
if (condition){
    O = someValue;
    //statements
    //statements
} else {
    O = someValue;
    //statements
    //statements
}

または

if (condition){
    Object O = someValue;
    //statements
    //statements
} else {
    Object O = someValue;
    //statements
    //statements
}

注: someValue はすべての場合で等しい

4

2 に答える 2

1

最初の表現が最適です。とはいえ、JavaC を含む最新のコンパイラのほとんどは、不要な初期化を削減または排除するためにバイト コードを最適化します。これは、javap やお気に入りのバイトコード アナライザーなどのツールで確認できます。

これは、Java だけでなく、ほとんどのコンパイラに当てはまります。

于 2017-01-10T07:49:25.303 に答える