Javaでは三項演算子は「if」条件よりも高速ですか?[重複] 質問する

Javaでは三項演算子は「if」条件よりも高速ですか?[重複] 質問する

私は「条件付き症候群「つまり、私は常に if 条件を使用する傾向があります。三項演算子を使用することはほとんどありません。たとえば、次のようになります。

//I like to do this:
int a;
if (i == 0)
{
    a = 10;
}
else
{
    a = 5;
}

//When I could do this:
int a = (i == 0) ? 10:5;

どちらを使用するかは重要ですか? どちらが高速ですか? 顕著なパフォーマンスの違いはありますか? 可能な限り、最も短いコードを使用する方がよいですか?

ベストアンサー1

どちらを使うかは重要ですか?

はい!2 番目ははるかに読みやすいです。言いたいことを簡潔に表現した 1 行と、事実上雑然とした 9 行を交換できます。

どちらが速いですか?

どちらでもない。

可能な限り、最も短いコードを使用する方が良いでしょうか?

「可能な場合はいつでも」ではありませんが、悪影響がなければ、可能な限りいつでもそうしてください。コードが短いほど、付随的な影響(「定型コード」)ではなく関連部分に焦点を当てているため、少なくとも潜在的に読みやすくなります。

おすすめ記事