Skip to content

String concatenation in loop (ARCH4070)

Key java.performance.string-concat-in-loop · Severity warning · Category performance

String is immutable in Java; concatenating with += inside a loop allocates and copies a new array each iteration, yielding quadratic cost in the input size.

String result = "";
for (String item : items) {
result += item + ",";
}
return result;
StringBuilder sb = new StringBuilder();
for (String item : items) {
sb.append(item).append(',');
}
return sb.toString();

Use a single StringBuilder instead of String += when accumulating inside a loop.