Junior — Middle
Java'da String va StringBuilder sinflari orasidagi farqlar nima va qaysi hollarda har birini afzalroq ishlatish tavsiya etiladi?
sobes.tech AI
AIdan javob
Java'da String sinfi o'zgarmas (immutable) satrni ifodalaydi. Har safar satr o'zgartirilganda, yangi obyekt yaratiladi, bu ko'p qo'shish operatsiyalarida samarali bo'lmasligi mumkin.
StringBuilder esa o'zgartiriladigan (mutable) belgi buferi bo'lib, yangi obyektlar yaratmasdan satrni samarali o'zgartirish imkonini beradi.
Qachon foydalanish:
String— satr yaratilgandan keyin o'zgarmasa yoki o'zgarishlar kam bo'lsa.StringBuilder— satrda tez-tez o'zgarishlar bo'lsa, masalan, sikllarda, katta satrlar qurishda.
Misol:
StringBuilder sb = new StringBuilder();
for (int i = 0; i < 10; i++) {
sb.append(i).append(", ");
}
String result = sb.toString();