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.