Atšķirība starp ArrayList un LinkedList

Satura rādītājs:

Atšķirība starp ArrayList un LinkedList
Atšķirība starp ArrayList un LinkedList

Video: Atšķirība starp ArrayList un LinkedList

Video: Atšķirība starp ArrayList un LinkedList
Video: Java урок - 18.2.3 Коллекции. Отличия ArrayList от LinkedList 2024, Novembris
Anonim

Galvenā atšķirība - ArrayList vs LinkedList

Kolekcijas ir noderīgas datu glabāšanai. Parastā masīvā masīva lielums ir fiksēts. Dažreiz ir nepieciešams izveidot masīvus, kas var augt pēc vajadzības. Programmēšanas valodām, piemēram, Java, ir kolekcijas. Tas ir ietvars ar klašu un saskarņu kopu. Tas kalpo kā konteiners elementu grupai. Kolekcijas ļauj saglabāt, atjaunināt, izgūt elementu kopu. Tas palīdz strādāt ar datu struktūrām, piemēram, sarakstiem, kopām, kokiem un kartēm. Saraksts ir kolekcijas ietvara saskarne. ArrayList un LinkedList ir divas kolekciju sistēmas klases. Tie ievieš kolekcijas saskarni un saraksta saskarni. Šajā rakstā ir apskatīta atšķirība starp ArrayList un LinkedList. ArrayList ir klase, kas paplašina AbstractList un ievieš List interfeisu, kas iekšēji izmanto dinamisku masīvu datu elementu glabāšanai. LinkedList ir klase, kas paplašina AbstractSequentialList un ievieš List, Deque un Queue saskarnes, kas iekšēji izmanto divkārši saistītu sarakstu, lai saglabātu datu elementus. Tā ir galvenā atšķirība starp ArrayList un LinkedList.

Kas ir ArrayList?

Dinamisko masīvu izveidošanai tiek izmantota klase ArrayList. Atšķirībā no parastā masīva, dinamiskā masīva lielums nav fiksēts. Objektam, kas izveidots, izmantojot ArrayList klasi, ir atļauts sarakstā saglabāt elementu kopu. Jauda palielinās automātiski, tāpēc programmētājs var pievienot elementus sarakstam. ArrayList klase paplašina AbstractList klasi, kas ievieš List interfeisu. Tāpēc ArrayList var izmantot List interfeisa metodes. Lai piekļūtu elementiem, tiek izmantota metode get(). Pievienot() metodi var izmantot, lai sarakstam pievienotu elementus. Remove() metode tiek izmantota, lai noņemtu elementu no saraksta. Skatiet tālāk norādīto programmu.

Atšķirība starp ArrayList un LinkedList
Atšķirība starp ArrayList un LinkedList
Atšķirība starp ArrayList un LinkedList
Atšķirība starp ArrayList un LinkedList

Attēls 01: ArrayList piemērs

Saskaņā ar iepriekš minēto programmu tiek izveidots ArrayList objekts. Izmantojot pievienošanas metodi, elementus var pievienot dinamiski. Elementi “A”, “B”, “C”, “D” un “E” tiek pievienoti, izmantojot pievienošanas metodi. Noņemšanas metode tiek izmantota, lai noņemtu elementu no saraksta. Nododot 4 noņemšanas metodei, burts 4. rādītājā, kas ir “E”, tiek noņemts no saraksta. Atkārtojot sarakstu, izmantojot for cilpu, tiks drukāti burti A, B, C un D.

Kas ir LinkedList?

Līdzīgi kā ArrayList, LinkedList tiek izmantots datu elementu dinamiskai glabāšanai. Objektam, kas izveidots, izmantojot LinkedList klasi, ir atļauts sarakstā saglabāt elementu kopu. Jauda palielinās automātiski, tāpēc programmētājs var pievienot elementus sarakstam. Datu glabāšanai tas iekšēji izmanto divkārši saistītu sarakstu. Divkārši saistītā sarakstā dati tiek glabāti kā mezgli. Katrs mezgls satur divas saites. Pirmā saite norāda uz iepriekšējo mezglu. Nākamā saite norāda uz nākamo secības mezglu.

Klase LinkedList paplašina AbstractSequentialList klasi un ievieš saskarni List. Tāpēc LinkedList var izmantot List interfeisa metodes. Get() metodi var izmantot, lai piekļūtu saraksta elementiem. Pievienot() metodi var izmantot, lai sarakstam pievienotu elementus. Remove() metode tiek izmantota, lai noņemtu elementu no saraksta. Skatiet tālāk norādīto programmu.

Galvenā atšķirība starp ArrayList un LinkedList
Galvenā atšķirība starp ArrayList un LinkedList
Galvenā atšķirība starp ArrayList un LinkedList
Galvenā atšķirība starp ArrayList un LinkedList

Attēls 02: Piemērs ar LinkedList

Saskaņā ar iepriekš minēto programmu tiek izveidots LinkedList objekts. Izmantojot pievienošanas metodi, elementus var pievienot dinamiski. Elementi “A”, “B”, “C”, “D” un “E” tiek pievienoti, izmantojot pievienošanas metodi. Noņemšanas metode tiek izmantota, lai noņemtu elementu no saraksta. Nododot 4 noņemšanas metodei, burts 4. rādītājā, kas ir “E”, tiek noņemts no saraksta. Atkārtojot, izmantojot for cilpu, tiks drukāti burti A, B, C un D.

Kādas ir līdzības starp ArrayList un LinkedList?

  • Gan ArrayList, gan LinkedList ievieš List saskarni.
  • Gan ArrayList, gan LinkedList var saturēt dublētus elementus.
  • Gan ArrayList, gan LinkedList saglabā ievietošanas secību.

Kāda ir atšķirība starp ArrayList un LinkedList?

ArrayList vs LinkedList

ArrayList ir klase, kas paplašina AbstractList un ievieš List interfeisu, kas iekšēji izmanto dinamisku masīvu, lai saglabātu datu elementus. LinkedList ir klase, kas paplašina AbstractSequentialList un ievieš List, Deque, Queue saskarnes, kas iekšēji izmanto divkārši saistītu sarakstu, lai saglabātu datu elementus.
Piekļuve elementiem
Piekļuve ArrayList elementiem ir ātrāka nekā LinkedList. Piekļuve LinkedList elementiem ir lēnāka nekā ArrayList.
Elementu manipulēšana
ArrayList elementu manipulēšana notiek lēnāk nekā LinkedList. Manipulēt ar LinkedList elementiem ir ātrāk nekā ar ArrayList.
Uzvedība
ArrayList darbojas kā saraksts. LinkedList darbojas kā saraksts un rinda.

Kopsavilkums - ArrayList vs LinkedList

Kolekcijas sistēma ļauj strādāt ar datu struktūrām, piemēram, sarakstiem, kokiem, kartēm un kopām. Saraksts ir kolekcijas sistēmas saskarne. Šajā rakstā tika apspriesta atšķirība starp ArrayList un LinkedList. ArrayList ir klase, kas paplašina AbstractList un ievieš List interfeisu, kas iekšēji izmanto dinamisku masīvu datu elementu glabāšanai. LinkedList ir klase, kas paplašina AbstractSequentialList un ievieš List, Deque, Queue interfeisus, kas iekšēji izmanto divkārši saistītu sarakstu datu elementu glabāšanai. Tā ir atšķirība starp ArrayList un LinkedList.

Ieteicams: