Ako radite na a i recite da želite ispisati sekvencu, tu Iterator u Javi dolazi na sliku. Na taj način možete dobiti sekvencu čak i bez dodavanja ispisa za svaki redak. Dakle, naučimo o Iteratoru u .
ng-promjena vs onchange
Ispod su teme koje ću obrađivati u ovom modulu:
Započnimo!
Što je iterator?
Java uglavnom podržava četiri različita pokazivača. Oni su naime:
- Nabrajanje
- Iterator
- ListIterator
- Spliterator
Svaki od ovih Java pokazivača ima neke prednosti i nedostatke. U ovom ćemo se članku usredotočiti na Iterator.
Što je iterator u Javi?
Iterator je sučelje koje pripada okviru zbirke. Omogućuje vam prelazak zbirke, pristup elementu podataka i uklanjanje elemenata podataka zbirke.
Također se smatra univerzalnim iteratorom jer ga možete primijeniti na bilo koji objekt. Korištenjem Iteratora možete izvoditi i operacije čitanja i uklanjanja. Ovo je poboljšana verzija Nabrajanje s dodatnim funkcionalnostima sposobnosti uklanjanja elementa.
Metode Java Iteratora
Java iterator ima ukupno 4 metode. Razumijemo ih detaljno.
koja je ideja najbolja za javu
Metode | Opis |
---|---|
forEachRemaining (trošenje) | Izvodi radnje na svakom elementu dok i ako svi elementi nisu obrađeni. Također sve dok akcija ne izuzme izuzetak. |
hasNext () | Ovaj vraća se prava vrijednost ako se tijekom iteracije nađe velik broj elemenata. |
Sljedeći() | Ovaj vraća se sljedeći navedeni element tijekom iteracije. |
ukloniti() | Ova metoda rosjeća trenutni element. Baca IllegalStateException ako se pokuša nazvati remove () kojem ne prethodi poziv next (). |
boolean hasNext () | To vraća true ako iteracija ima više elemenata. |
Primjer:
klasa Metoda {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 za prelazak popisa Iterator iterator = list.iterator () System.out.println (' Elementi popisa : ') while (iterator.hasNext ()) System.out.print (iterator.next () +' ') System.out.println ()}}
Izlaz: EDUREKA
Pogledajmo ListIterator na Javi.
ListIterator u Javi
ListIterator na Javi je Iterator koji korisnicima omogućuje prelazak kroz zbirku u oba smjera. Sadrži sljedeće metode:
Metode | Metoda i opis |
---|---|
void dodaj (objekt objekt) | Upisuje obj na popis ispred elementa koji će se sljedećim pozivom vratiti na next (). |
boolean hasNext () | Vraća true ako postoji sljedeći element. U suprotnom, vraća false. |
boolean hasPrevious () | Vraća true ako postoji prethodni element. U suprotnom, vraća false. |
Sljedeći objekt () | Vraća sljedeći element. Izbacuje se NoSuchElementException ako nema sljedećeg elementa. |
int nextIndex () | Vraća indeks sljedećeg elementa. Ako nema sljedećeg elementa, vraća veličinu popisa. |
Prethodni objekt () | Vraća prethodni element. Izbacuje se NoSuchElementException ako nema prethodnog elementa. |
int previousIndex () | Vraća indeks prethodnog elementa. Ako nema prethodnog elementa, vraća -1. |
ukloni prazninu () | Uklanja trenutni element sa popisa. IllegalStateException se baca ako se pozove remove () prije nego što se pozove next () ili previous (). |
void set (objekt objekt) | Trenutnom elementu dodjeljuje obj. Ovo je element koji je posljednji put vratio poziv bilo next () ili previous (). |
Primjer:
popisi javnih klasa {public static void main (String args []) {// Stvaranje popisa polja ArrayList al = new ArrayList () // dodavanje elemenata na popis nizova al.add ('E') al.add ('D ') al.add (' U ') al.add (' R ') al.add (' E ') al.add (' K ') al.add (' A ') // Koristite iterator za prikaz sadržaja al System.out.print ('Izvorni sadržaj al:') Iterator itr = al.iterator () while (itr.hasNext ()) {Element objekta = itr.next () System.out.print (element + '' )} System.out.println () // Izmjena objekata koji se ponavljaju ListIterator litr = al.listIterator () while (litr.hasNext ()) {Element objekta = litr.next () litr.set (element + '+') } System.out.print ('Izmijenjeni sadržaj al:') itr = al.iterator () dok (itr.hasNext ()) {Element objekta = itr.next () System.out.print (element + '') } System.out.println () // Sada, prikažite popis unatrag System.out.print ('Modificirani popis unatrag:') while (litr.hasPrevious ()) {Object element = litr.previous () System.out. ispis (element + '')} System.out.println ()}}
Izlaz:
Izvorniksadržaj al:E D U R E K A
Izmijenjenosadržaj al:JE+D+U+R+JE+DO+ A +
Izmijenjenopopis unatrag:DO+DO+JE+R+U+D+ I +
Pogledajmo sada prednosti i ograničenja ovog iteratorskog sučelja u Javi.
Prednosti Iteratora u Javi
Iterator u Javi ima sljedeće prednosti.
- Te iteratore možete koristiti za bilo koju klasu zbirke.
- Iterator u Javi podržava oboje čitati kao i ukloniti operacijama.
- Ako koristite za petlju ne možeš ažurirajte (dodajte / uklonite) Zbirku, dok uz pomoć iteratora Zbirku možete lako ažurirati.
- To je univerzalni kursor za API za prikupljanje.
- Nazivi metoda vrlo su jednostavni i vrlo su jednostavni za upotrebu.
Ograničenja Iteratora u Javi
Iteratori u Javi imaju sljedeće nedostatke:
- Možete izvoditi samo iteraciju smjera prema naprijed, to je Jednosmjerni iterator.
- Zamjena i dodavanje novog elementa nije podržan od strane Iteratora.
- ListIterator je najsnažniji iterator, ali je primjenjiv samo za klase implementirane na Listu. Dakle, to nije univerzalni iterator.
- Kada koristite CRUD Operations, on ne podržava operacije stvaranja i ažuriranja.
- Kada ga usporedite sa Spliteratorom, ne dopušta paralelno ponavljanje elemenata. To znači da podržava samo sekvencijalnu iteraciju.
- Ne podržava bolje performanse za ponavljanje velike količine podataka.
Ovo nas dovodi do kraja ovog članka, gdje smo naučili kako iterator u Javi radi. Nadam se da vam je jasno sve što je s vama podijeljeno u ovom vodiču.
okvir vođen ključnim riječima u selenu
Ako smatrate da je ovaj članak o “Iteratoru na Javi” relevantan, pogledajte pouzdana tvrtka za internetsko učenje s mrežom od više od 250 000 zadovoljnih učenika raširenih širom svijeta.
Ovdje smo da vam pomognemo u svakom koraku na putovanju, osim toga, osmislili smo i kurikulum koji je stvoren za studente i profesionalce koji žele biti programer Java. Tečaj je dizajniran da vam pruži početnu prednost u Java programiranju i osposobi vas za osnovne i napredne Java koncepte zajedno s raznim Java okvirima poput Hibernate & Spring.
Ako naiđete na neko pitanje, slobodno postavite sva svoja pitanja u odjeljku za komentare u 'Iteratoru na Javi' i naš će tim rado odgovoriti.