Soovitatav, 2024

Toimetaja Valik

Iteraatori ja ListIteratori vaheline erinevus Java-is

Iterator ja ListIterator on kaks Java-i kursorit . Nii Iterator kui ka ListIterator on määratletud J Frameworki kogumisraamistikus J ava.Util paketis. ListIterator on Iteratori liidese lapse liides. Suurim erinevus Iteratori ja ListIteratori vahel on see, et Iterator võib koguda elemente kogumikus ainult ettepoole, samas kui ListIterator suudab koguda elemente nii ettepoole kui ka tahapoole .

Arutagem veel mõningaid erinevusi Iterator ja ListIterator vahel allpool toodud võrdluskaardi abil.

Võrdluskaart

Võrdluse alusIteraatorListIterator
PõhilineIteraator võib elemente koguda ainult ettepoole.ListIterator võib liikuda elemente kogumis nii ettepoole kui ka tahapoole.
LisamaIterator ei saa kogusse elemente lisada.ListIteror saab kogule elemente lisada.
MuutmaIterator ei saa kollektsiooni elemente muuta.ListIterator saab muuta komplekti elemente komplekti () abil.
TraverseIteraator saab liikuda kaardile, nimekirjale ja seadistusele.ListIterator saab liikuda ainult objektide nimekirja.
IndeksIteraatoril ei ole meetodit kogumi elemendi indeksi saamiseks.ListIteratori abil saate koguda elemendi indeksi.

Iteraatori mõiste

Iteraator on kogumiku raamistiku liides. Seda kasutatakse kogumiselementide läbimiseks. Iterator võimaldab teil iga kogumiku elementi ükshaaval korrata, saada kogumist elemente või eemaldada kogumist elemendid. Te võite märgata, et Iteratorit kasutades ei saa kogumiku elementi muuta.

Iteratoril on meetod iterator (), mis tagastab iteraatori kogumise alguseni. Kui olete kogumise alguseni jõudnud iteratori, siis koguda kogumiku elemente, et luua silmus, mis kutsub silma iterate iga kord kordama () . Kui on tagasiside (), siis see tähendab, et järgmine element on kogumikus ja kui see tagastab vale, tähendab see seda, et kõik elemendid on läbitud. Siis saate silindri sees iga elementi koguda, kasutades järgmist () . Järgmine () meetod tagastab kollektsiooni järgmise elemendi.

Tagasimaksmine:

Iteraatori abil saate koguda ainult ettepoole.
Iteratorit kasutades ei saa te koguda elemente manipuleerida ega muuta.

ListIteratori määratlus

ListIterator on kogumiku raamistiku liides ja see laiendab Iteratori liidest. ListIteratorit kasutades saate koguda elemente nii ettepoole kui ka tahapoole . Saate lisada, eemaldada või muuta kogumikus olevaid elemente. Lühidalt öeldes võime öelda, et see eemaldab Iteratori puudused.

ListIteratori meetodid on järgmised:

hasNext () : Kui tagastab tõsi, kinnitab see, et kogumis on rohkem elemente.
järgmine () : Tagastab loendi järgmised elemendid.
nextIndex () : Tagastab loendi järgmiste elementide indeksi.
hasPrevious () : Tagastab tõe, kui kogumis on vastupidises suunas elemente.
eelmine () : Tagastab eelmise elemendi kollektsiooni.
previousIndex () : Tagastab kogumi eelmise elemendi indeksi.
eemalda () : elemendi kustutamine kogumist.
set () : muudab kollektsiooni elementi.
add () : lisab kollektsiooni uue elemendi.

Iteraatori ja ListIteratori vahelised peamised erinevused

  1. Põhiline erinevus Iteratori ja ListIteratori vahel on see, et mõlemad on kursor, Iterator võib liikuda elementide kogumisse ainult ettepoole. Teisest küljest võib ListIterator liikuda nii ettepoole kui ka tahapoole.
  2. Kasutades iteratorit, ei saa kollektsioonile ühtegi elementi lisada. Kuid, kasutades ListIteratorit, saate kogusse lisada elemente.
  3. Kasutades Iteratorit, ei saa te eemaldada elementi kollektsioonist, kus, nagu saab elementist eemaldada, kasutades ListIteratorit.
  4. Iteratori abil saate läbida kõiki kogusid nagu kaart, loend, komplekt. Kuid ListIterori abil saate liikuda ainult rakendatud objektide nimekirja.
  5. Elemendi abil saate laadida elemendi indeksi. Kuid kuna loend on järjestikune ja indeksipõhine, saad ListIteratori abil elementi indeksi.

Järeldus:

Võite kasutada ListIteratorit, kui peate eriti esiletõstmise ja tagurpidi suunas liikuma. Te võite kasutada Iteratorit, kuna see toetab kõiki tüübikogu objekte.

Top