パフォーマンスを改善するには、文字列連結を使用する代わりに StringBuffer.append() を使用します。
文字列オブジェクトは不変であり、作成後に変化することはありません。以下のコードを例に説明します。
String str = "testing"; str = str + "abc";
コンパイラはこのコードを次のように変換します。
String str = "testing"; StringBuffer tmp = new StringBuffer(str); tmp.append("abc"); str = tmp.toString();
この例が示すように、コピーは本質的に負荷が大きい処理であり、使用しすぎるとパフォーマンスを著しく低下させる可能性があります。