hashset vs arrailistas


Atsakymas 1:

Vektorius:

Numatytoji vektoriaus talpa yra 10 elementų, čia dydis skiriasi nuo talpos, po 10 elementų, jei įvesime vieną elementą, vektoriaus talpa pasikeičia į 20, nes dydis yra tik 11, pavyzdžiui, jei įvedėte 21 elementą vektoriaus, tada, jei atspausdinsite dydį, rezultatas bus 21, bet talpa - 30

Masyvų sąrašas:

Sąraše nėra pranašumo, jei talpa yra dvi galios. Tiesą sakant, jokio konkretaus pradinio pajėgumo pranašumas neturi. Jis turi būti pakankamai didelis, kad būtų išvengta daugkartinių keitimo žingsnių, taikomų įprastiems mažiems sąrašams, ir pakankamai mažas, kad tokiu atveju nereikėtų švaistyti atminties nepanaudotai talpai. 10 greičiausiai buvo pasirinktas vien todėl, kad patenka į tinkamus diapazonus, kad atitiktų šiuos reikalavimus, ir todėl, kad yra „apvalus“.

Bet prieš „Java 8“ masyvo sąrašo dydį reikėjo paminėti 10. Po jo jis minimas kaip 0. (Jei klystu, ištaisykite mane).

Hašo žemėlapis: 16

Maišos lentelė: 16


Atsakymas 2:

„ArrayList-10 Vector-10 HashSet-16“ HashMap-16 „HashTable-11“ HashSet-16

Paaiškinimas:

„ArrayList“:

Sudaro tuščią sąrašą, kurio pradinė talpa yra 10.

Vektorius:

Sukuria tuščią vektorių, kad jo vidinių duomenų masyvo dydis būtų 10, o jo standartinės talpos padidėjimas būtų lygus nuliui.

„HashMap“:

Sukuria tuščią „HashMap“ su numatytąja pradine talpa (16) ir numatytuoju apkrovos koeficientu (0,75).

Turinys:

Sukuria naują tuščią maišos tašką su numatytąja pradine talpa (11) ir apkrovos koeficientu (0,75).

Hašetas:

Sukonstruoja naują, tuščią rinkinį; „HashMap“ atsarginės kopijos numatytoji pradinė talpa (16) ir apkrovos koeficientas (0,75).

Sekite mane pas Jose Praveen ir sužinokite daugiau apie Raspberry Pi, Hadoop, Spring, Java, Windows, Spring Boot temas.