Skirtumas Tarp Masyvų Ir Masyvų Sąrašų

Skirtumas Tarp Masyvų Ir Masyvų Sąrašų
Skirtumas Tarp Masyvų Ir Masyvų Sąrašų

Video: Skirtumas Tarp Masyvų Ir Masyvų Sąrašų

Video: Skirtumas Tarp Masyvų Ir Masyvų Sąrašų
Video: C+ paskaita | Įžanga į masyvus. Vienmačiai masyvai (įvedimas, išvedimas) 2024, Kovo
Anonim

Masyvai ir masyvų sąrašai

Masyvai yra dažniausiai naudojama duomenų struktūra elementų rinkiniui saugoti. Daugumoje programavimo kalbų pateikiami metodai, kaip lengvai deklaruoti masyvus ir prieigos elementus masyvuose. Masyvų sąrašas gali būti vertinamas kaip dinaminis masyvas, kurio dydis gali išaugti. Dėl šios priežasties programuotojui nereikia žinoti masyvo sąrašo dydžio, kai ji jį apibrėžia.

Kas yra masyvai?

Parodytas 1 paveiksle, yra kodo dalis, paprastai naudojama masyvui deklaruoti ir priskirti reikšmes. 2 paveiksle pavaizduota, kaip masyvas atrodytų atmintyje.

reikšmės [0] = 100;

reikšmės [1] = 101;

reikšmės [2] = 102;

reikšmės [3] = 103;

reikšmės [4] = 104;

1 paveikslas: Masyvo reikšmių deklaravimo ir priskyrimo kodas

100 101 102 103 104 Indeksas: 0 1 2 3 4

2 paveikslas: atmintyje saugomas masyvas

Virš kodo apibrėžia masyvą, kuriame gali būti saugomi 5 sveikieji skaičiai, ir jie pasiekiami naudojant indeksus nuo 0 iki 4. Viena svarbi masyvo savybė yra ta, kad visas masyvas paskirstomas kaip vienas atminties blokas ir kiekvienas elementas gauna savo vietą masyve. Apibrėžus masyvą, jo dydis yra fiksuotas. Taigi, jei nesate tikras dėl masyvo dydžio kompiliavimo metu, turėtumėte apibrėžti pakankamai didelį masyvą, kad jis būtų saugus. Tačiau dažniausiai mes iš tikrųjų naudosime mažiau elementų nei skyrėme. Taigi nemažai atminties iš tikrųjų švaistoma. Kita vertus, jei „pakankamai didelis masyvas“iš tikrųjų nėra pakankamai didelis, programa sugenda.

Kas yra „Arraylists“?

Masyvų sąrašas gali būti vertinamas kaip dinaminis masyvas, kurio dydis gali išaugti. Todėl masyvų sąrašai idealiai tinka naudoti tais atvejais, kai nežinote deklaravimo metu reikalingų elementų dydžio. „Java“masyvų sąrašai gali laikyti tik objektus, jie negali tiesiogiai laikyti primityvių tipų (galite primityvius tipus įdėti į objekto vidų arba naudoti pirmykščių tipų pakavimo klases). Paprastai masyvų sąrašuose pateikiami metodai, kaip atlikti įterpimą, ištrynimą ir paiešką. Laiko sudėtingumas norint pasiekti elementą yra o (1), o įterpiant ir ištrinant - o (n). „Java“sistemoje masyvų sąrašus galima pereiti naudojant foreach kilpas, iteratorius arba tiesiog naudojant indeksus.

Kuo skiriasi masyvai nuo masyvų sąrašų

Nors masyvai ir masyvų sąrašai yra panašūs ta prasme, kad abu jie naudojami elementų kolekcijoms laikyti, jie skiriasi tuo, kaip jie apibrėžiami. Masyvo dydis turi būti nurodytas, kai masyvas yra apibrėžtas, tačiau jūs galite apibrėžti masyvų sąrašą nežinodami faktinio dydžio. Galite pridėti elementų į masyvų sąrašą, kai jis bus apibrėžtas, ir tai neįmanoma naudojant masyvus. Tačiau „Java“masyvų sąrašai negali turėti primityvių tipų, tačiau masyvai gali būti naudojami primityviems tipams laikyti. Bet jei jums reikia duomenų struktūros, kuri gali skirtis nuo jos dydžio, masyvų sąrašas būtų geriausias pasirinkimas.

Rekomenduojama: