はじめに
"ほげ"を10万回繰り返して連結してみます。
+演算子
String result = "";
for (var i = 0; i < 100000; i++) {
result += "ほげ";
}
StringBuilder
var builder = new StringBuilder();
for (var i = 0; i < 100000; i++) {
builder.append("ほげ");
}
var result = builder.toString();
実行結果
実行時間(ms) | |
---|---|
+演算子 | 5709 |
StringBuilder | 9 |
まとめ
圧倒的StringBuilderの勝利。
+演算子で連結する方法は、内部的にはStringオブジェクトの生成/破棄を繰り返し行なっている分、時間がかかってしまうようですね。