İçeriğe geç

Sıcak yolda kutulama (ARCH4087)

Anahtar java.performance.boxing-in-hot-path · Önem info · Kategori performance

Sıkı bir döngüde ilkel değerleri Integer/Long gibi sarmalayıcılara otomatik kutulamak, her yinelemede çöp toplayıcıya yük bindiren nesneler üretir. İlkel tipler kutulamayı önler.

long sum = 0;
List<Long> values = new ArrayList<>();
for (int i = 0; i < n; i++) {
Long boxed = (long) i; // autoboxing each iteration
sum += boxed;
}
long sum = 0;
for (int i = 0; i < n; i++) {
sum += i; // primitive arithmetic, no boxing
}

Sıcak yollarda sarmalayıcı tipler yerine ilkel tipleri (veya IntStream/LongStream) kullanın.