要编写一个好的比较测试,必须运行它数千次(甚至数百万次)。这将消除(在大多数情况下)其他程序的影响。
但是如果JVM能够影响结果。例如:
第一个解决方案是:
final StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append(getStrOne());
stringBuilder.append(getStrTwo());
final String result1 = stringBuilder.toString();
第二个内容是:
final String result2 = getStrOne() + getStrTwo();
我不知道哪个更好,因为JVM可以影响结果。如何知道哪个更好?
更新:我并不是指那个添加比较测试。我是在问这样一个难以测试的情况。
final String result2 = "str1str2";
... - assylias