Sobes.tech
Junior — Middle

ArrayList hajmi ketma-ket elementlar qo'shilganda qanday o'zgaradi, belgilangan miqdorga yetguncha?

sobes.tech AI

AIdan javob

Java'da ArrayList sinfi dinamik massivni amalga oshiradi, u yangi elementlar qo'shilganda va hozirgi sig'im to'ldirilgan bo'lsa, o'z o'lchamini avtomatik ravishda oshiradi.

Dastlab, ArrayList ma'lum bir sig'im bilan (standartda 10) yaratiladi. Elementlar soni bu sig'imga yetganda, ichki massivning o'lchami oshiriladi. Standart implementatsiyada, o'lcham hozirgi o'lchamdan taxminan 50% ga oshadi (ya'ni, yangi sig'im = eski sig'im + eski sig'im / 2).

Bu ma'lumotlarni ko'chirish xarajatlari va xotira foydalanishini muvozanatlash imkonini beradi.

Misol:

ArrayList<Integer> ro'yxat = new ArrayList<>();
// Elementlar qo'shamiz, o'lcham 10 ga yetganda, sig'im taxminan 15 ga oshadi
for (int i = 0; i < 20; i++) {
    ro'yxat.add(i);
}