Sobes.tech
Junior — Middle

ArrayList-də daxili massiv onun ölçüsünü artırmaq lazım olduqda necə davranır?

sobes.tech Süni İntellekt

AI-dan cavab

Java-da ArrayList iç array-si, ölçünü artırmağa ehtiyac olduqda, adətən mövcud ölçünün təxminən 1.5 dəfə böyük olan yeni bir array yaradılır. Sonra, köhnə array-dən bütün elementlər yeni array-ə köçürülür və iç array-ə istinad yenilənir. Bu, ArrayList-in yeni elementlər əlavə edildikdə dinamik olaraq genişlənməsinə imkan verir, lakin ölçünü artırma əməliyyatı məlumatların kopyalanması səbəbindən vaxt baxımından bahalıdır.

Ölçünün artırılmasının təxminən necə baş verdiyi:

ArrayList<Integer> list = new ArrayList<>();
// Elementlər əlavə edilərkən, iç array doludursa,
// artırılmış tutuma malik yeni array yaradılır və məlumatlar kopyalanır.
list.add(1);
list.add(2);
// ...

Bu davranış istifadəçidən gizlidir, lakin böyük məlumat həcmləri ilə işləyərkən genişlənmə sayını minimuma endirmək üçün (məsələn, başlanğıc tutumu təyin etməklə) nəzərə alınmalıdır.