Döngüde String birleştirme (ARCH4070)
Anahtar java.performance.string-concat-in-loop · Önem warning · Kategori performance
Java’da String değişmezdir; döngü içinde += ile birleştirmek her yinelemede yeni bir dizi tahsis eder ve kopyalar. Bu, girdi boyutuyla karesel maliyet doğurur.
Hatalı
Bölüm başlığı “Hatalı”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();Düzeltme
Bölüm başlığı “Düzeltme”Döngü içinde birikim yaparken String += yerine tek bir StringBuilder kullanın.