Mis on Java Iterator ja kuidas seda kasutada?



Java blogi Iterator annab teile mõne näite abil korraliku sissejuhatuse iteraatoriks ja kuidas neid Java-s kasutada

Kui töötate a ja öelge, et soovite jada printida, seal tuleb pildile Java Iterator. Nii saate järjestuse isegi ilma iga rea ​​prindilauset lisamata. Nii et uurime Iteratori kohta sisse .

Siin on teemad, mida selles moodulis käsitlen:





Alustame!

erinevus bigdata ja hadoop vahel

Mis on iteraator?

Java toetab peamiselt nelja erinevat kursorit. Need on nimelt:



  • Loendamine
  • Iteraator
  • ListIterator
  • Jagaja

Igal neist Java-kursoritest on mõned eelised ja puudused. Selles artiklis keskendume Iteratorile.

Mis on Java-s iteraator?

Iteraator on liides, mis kuulub kogu raamistikku. See võimaldab teil kollektsioonist läbida, pääseda juurde andmeelementi ja eemaldada kogu kogu.



Seda peetakse ka universaalseks iteraatoriks, kuna saate seda rakendada mis tahes jaoks objekt. Iteratori abil saate teha nii lugemis- kui ka eemaldamistoiminguid. See on rakenduse täiustatud versioon Loendamine elemendi eemaldamise võime täiendavate funktsioonidega.

Java itaatori meetodid

Java iteraatoril on kokku 4 meetodit. Mõistame neid üksikasjalikult.

MeetodidKirjeldus
forEachRemaining (Consumeraction)See teostab iga elemendi toiminguid seni, kuni kõiki elemente pole töödeldud. Ka seni, kuni tegevus viskab erandi.
hasNext ()See naaseb tõeline väärtus, kui iteratsiooni käigus tekib suur arv elemente.
järgmine ()See naaseb järgmine määratud element iteratsiooni ajal.
eemalda ()See meetod reemaldab praeguse elemendi. Viskab IllegalStateException kui proovitakse helistada eemaldamisele (), millele ei eelne kõne järgmisele ().
boolean hasNext ()See on tõene, kui iteratsioonil on rohkem elemente.

Näide:

klassi meetod {public static void main (String [] args) ArrayList list = new ArrayList () list.add ('E') list.add ('D') list.add ('U') list.add ('R ') list.add (' E ') list.add (' K ') list.add (' A ') // Iterator loendi läbimiseks Iterator iterator = list.iterator () System.out.println (' Loendi elemendid : ') while (iterator.hasNext ()) System.out.print (iterator.next () +' ') System.out.println ()}}

Väljund: EDUREKA

Vaatame Java-s ListIteratorit.

ListIterator Java-s

informaatika õppimine samm-sammult

ListIterator Java on Iterator, mis võimaldab kasutajatel kogu kaudu mõlemas suunas liikuda. See sisaldab järgmisi meetodeid:

MeetodidMeetod ja kirjeldus
void add (objekti objekt) Lisab objekti loendisse selle elemendi ees, mille tagastab järgmine kõne järgmisele ().
boolean hasNext () Tagastab tõene, kui on järgmine element. Vastasel juhul tagastab vale.
boolean hasEelmine () Tagastab tõese, kui on eelmine element. Vastasel juhul tagastab vale.
Järgmine objekt () Tagastab järgmise elemendi. Kui järgmist elementi pole, visatakse NoSuchElementException.
int järgmineIndex () Tagastab järgmise elemendi indeksi. Kui järgmist elementi pole, tagastab loendi suuruse.
Objekt eelmine () Tagastab eelmise elemendi. NoSuchElementException visatakse, kui eelmist elementi pole.
int eelmineIndex () Tagastab eelmise elemendi indeksi. Kui eelmist elementi pole, tagastab -1.
tühine eemalda () Eemaldab praeguse elemendi loendist. IllegalStateException visatakse, kui enne järgmist () kutsutakse eemaldama () või kutsutakse eelmist ().
void set (objekti objekt) Määrab obj praegusele elemendile. See on element, mille viimane kõne tagastas järgmisele () või eelmisele ().

Näide:

public class Lists {public static void main (String args []) {// Massiiviloendi loomine ArrayList al = new ArrayList () // lisage elemendid massiivide loendisse al.add ('E') al.add ('D ') al.add (' U ') al.add (' R ') al.add (' E ') al.add (' K ') al.add (' A ') // Kasutage iteraatorit al System.out.print ('ali algsisu:') Iterator itr = al.iterator () while (itr.hasNext ()) {Object element = itr.next () System.out.print (element + '' )} System.out.println () // korduvate objektide muutmine ListIterator litr = al.listIterator () while (litr.hasNext ()) {Object element = litr.next () litr.set (element + '+') } System.out.print ('ali modifitseeritud sisu') itr = al.iterator () while (itr.hasNext ()) {Object element = itr.next () System.out.print (element + '') } System.out.println () // Nüüd kuvage loend tagurpidi System.out.print ('Muudetud loend tahapoole:') while (litr.hasPrevious ()) {Object element = litr.previous () System.out. print (element + '')} System.out.println ()}}

Väljund:

Originaalal. sisu:E D U R E K A
Muudetudal. sisu:ON+D+U+R+ON+TO+ A +
Muudetudloendit tahapoole:TO+TO+ON+R+U+D+ JA +

luua massiivi objekte java

Vaatame nüüd selle iteraatori liidese eeliseid ja piiranguid Java-s.

Iteratori eelised Java-s

Java Iteratoril on järgmised eelised.

  • Neid iteraatoreid saate kasutada mis tahes kollektsiooni klassis.
  • Java Iterator toetab mõlemat lugeda sama hästi kui eemalda toimingud.
  • Kui kasutate silmuse jaoks sa ei saa värskendage (lisage / eemaldage) kogu, samas kui iteraatori abil saate kogu hõlpsasti uuendada.
  • See on kollektsiooni API universaalne kursor.
  • Meetodite nimed on väga lihtsad ja neid on väga lihtne kasutada.

Iteratori piirangud Java-s

Java iteraatoritel on järgmised puudused:

  • Saate teha ainult edasi-tagasi iteratsiooni, see tähendab ühesuunalist iteraatorit.
  • Iterator ei toeta uue elemendi asendamist ja lisamist.
  • ListIterator on kõige võimsam iteraator, kuid see kehtib ainult loendis rakendatud klasside puhul. Seega pole see universaalne iteraator.
  • CRUD-toimingute kasutamisel ei toeta see loomise ja värskendamise toiminguid.
  • Kui võrrelda seda jaoturiga, ei lase see teil elemente paralleelselt korrata. See tähendab, et see toetab ainult järjestikku kordamist.
  • Suure andmemahu kordamiseks ei toeta see paremat jõudlust.

See viib meid selle artikli lõppu, kus oleme õppinud tundma, kuidas Java iteraator töötab. Loodetavasti on teil selge kõik see, mida teiega selles õpetuses jagati.

Kui leiate, et see artikkel jaotises „Java Iterator” on asjakohane, vaadake järgmist usaldusväärne veebiõppeettevõte, mille võrgustik sisaldab üle 250 000 rahuloleva õppija, levis üle kogu maailma.

Oleme siin, et aidata teil igal sammul teie teekonnal, lisaks sellele pakume välja õppekava, mis on mõeldud õpilastele ja spetsialistidele, kes soovivad olla Java-arendajad. Kursus on loodud selleks, et anda teile Java programmeerimises edukas algus ja õpetada teid nii Java-põhiprogrammide kui ka edasijõudnute mõistete ning erinevate Java-raamistike, näiteks Hibernate & Spring, jaoks.

Kui teil on küsimusi, küsige julgelt kõiki oma küsimusi jaotises „Iterator in Java“ kommentaaride osas ja meie meeskond vastab sellele hea meelega.