良い比較テストテストを書くには、数千(何百万回)実行する必要があります。それは他のプログラムの影響力を(ほとんどの場合)均等にします。良いパフォーマンス比較テストを実行するにはどうすればよいですか?
しかし、JVMが結果に影響を及ぼす可能性がある場合。たとえば:
最初のソリューションは、次のとおりです。
final StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append(getStrOne());
stringBuilder.append(getStrTwo());
final String result1 = stringBuilder.toString();
そして第二には、次のとおりです。
final String result2 = getStrOne() + getStrTwo();
私はJVMが結果に影響を与えることができるので、優れている1かわかりません。どちらが良いかを知るには?
更新日:正確にはそのものではありません。追加コンパイルテスト。私はそのようなの状況をテストするのが苦手です。。
JVMが意味することは、結果に影響を与える可能性がありますか? – ddmps
2番目は 'final String result2 =" str1str2 ";に変換されます... – assylias
@Pescis例えばキャッシュ。 –