Kas ir Java Iterator un kā to izmantot?



Iterator Java emuārā sniegs jums piemēru ar dažiem piemēriem par to, kas ir iterators un kā tos izmantot Java.

Ja jūs strādājat pie un sakiet, ka vēlaties izdrukāt secību, tur attēlā parādās Iterator Java valodā. Tādā veidā jūs varat iegūt secību pat nepievienojot izdrukas paziņojumu katrai rindai. Tātad, uzzināsim par Iterator .

Tālāk ir norādītas tēmas, kuras apskatīšu šajā modulī:





Sāksim!

atslēgvārdu vadīts ietvars selenā

Kas ir iterators?

Java galvenokārt atbalsta četrus dažādus kursorus. Tie ir:



  • Uzskaitīšana
  • Iterators
  • ListIterator
  • Sadalītājs

Katram no šiem Java kursoriem ir dažas priekšrocības un trūkumi. Šajā rakstā mēs pievērsīsimies Iterator.

Kas tagad ir Java iterators?

Iterators ir saskarne, kas pieder kolekcijas ietvaram. Tas ļauj šķērsot kolekciju, piekļūt datu elementam un noņemt kolekcijas datu elementus.



Tas tiek uzskatīts arī par universālu iteratoru, jo jūs to varat pielietot jebkuram objekts. Izmantojot Iterator, jūs varat veikt gan lasīšanas, gan noņemšanas darbības. Šī ir uzlabota Uzskaitīšana ar elementa noņemšanas spējas papildu funkcionalitāti.

Java Iterator metodes

Java iterator kopā ir 4 metodes. Sapratīsim tos detalizēti.

MetodesApraksts
forEachRemaining (Consumeraction)Tas veic darbības ar katru no elementiem, kamēr visi elementi nav apstrādāti. Arī līdz brīdim, kad darbība izmet izņēmumu.
hasNext ()Šis atgriežas patiesa vērtība, ja iterācijas laikā sastopams liels skaits elementu.
Nākamais()Šis atgriežas nākamais norādītais elements atkārtojuma laikā.
noņemt ()Šī metode rizdzēš pašreizējo elementu. Metieni IllegalStateException ja mēģina izsaukt noņemšanu (), pirms kura netiek veikts zvans uz nākamo ().
boolean hasNext ()Tas atgriežas kā patiess, ja atkārtojumam ir vairāk elementu.

Piemērs:

klases metode {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 ') // Iterators, lai šķērsotu sarakstu Iterator iterator = list.iterator () System.out.println (' Saraksta elementi : ') while (iterator.hasNext ()) System.out.print (iterator.next () +' ') System.out.println ()}}

Rezultāts: EDUREKA

Apskatīsim Java ListIterator.

ListIterator Java

kā pārbaudīt datu bāzi

ListIterator Java valodā ir Iterator, kas ļauj lietotājiem pārvietoties pa Kolekciju abos virzienos. Tajā ir šādas metodes:

MetodesMetode un apraksts
void add (Object obj) Ievieto obj sarakstā, kas atrodas tā elementa priekšā, kuru atgriezīs nākamais zvans uz nākamo ().
boolean hasNext () Atgriež vērtību true, ja ir nākamais elements. Pretējā gadījumā atgriež false.
būla hasPrevious () Atgriež vērtību true, ja ir kāds iepriekšējs elements. Pretējā gadījumā atgriež false.
Nākamais objekts () Atgriež nākamo elementu. NoSuchElementException tiek izmests, ja nav nākamā elementa.
int nextIndex () Atgriež nākamā elementa indeksu. Ja nav nākamā elementa, atgriež saraksta lielumu.
Objekta iepriekšējā () Atgriež iepriekšējo elementu. Ja nav iepriekšējā elementa, tiek izmests NoSuchElementException.
int iepriekšējāIndex () Atgriež iepriekšējā elementa indeksu. Ja nav iepriekšējā elementa, atgriež -1.
anulēt noņemt () Noņem pašreizējo elementu no saraksta. IllegalStateException tiek izmests, ja pirms nākamā () tiek izsaukts Remove () vai tiek izsaukts iepriekšējais ().
void set (Object obj) Piešķir obj pašreizējam elementam. Šis ir elements, kuru pēdējo reizi atgrieza zvans uz nākamo () vai iepriekšējo ().

Piemērs:

public class Lists {public static void main (String args []) {// Masīvu saraksta izveide ArrayList al = new ArrayList () // elementu pievienošana masīvu sarakstam al.add ('E') al.add ('D ') al.add (' U ') al.add (' R ') al.add (' E ') al.add (' K ') al.add (' A ') // Izmantojiet iteratoru, lai parādītu al System.out.print ('Sākotnējais al: saturs:') Iterators itr = al.iterator () while (itr.hasNext ()) {Object element = itr.next () System.out.print (elements + '' )} System.out.println () // Modificēt iterējamos objektus ListIterator litr = al.listIterator () while (litr.hasNext ()) {Object element = litr.next () litr.set (elements + '+') } System.out.print ('Modificēts al: saturs') itr = al.iterator () while (itr.hasNext ()) {Object element = itr.next () System.out.print (elements + '') } System.out.println () // Tagad parādiet sarakstu atpakaļ System.out.print ('Modificēts saraksts atpakaļ:'), kamēr (litr.hasPrevious ()) {Object element = litr.previous () System.out. drukāt (elements + '')} System.out.println ()}}

Izeja:

Oriģinālssaturs al:E D U R E K A
Mainītssaturs al:IS+D+U+R+IS+TO+ A +
Mainītssarakstu atpakaļ:TO+TO+IS+R+U+D+ UN +

pēcdiploma sertifikāts pret meistariem

Apskatīsim šī iteratora interfeisa priekšrocības un ierobežojumus Java.

Iterator priekšrocības Java

Iterator Java ir šādas priekšrocības.

  • Šos atkārtotājus var izmantot jebkurai kolekcijas klasei.
  • Iterator Java atbalsta abus lasīt kā arī noņemt operācijas.
  • Ja jūs izmantojat par cilpu tu nevari atjauniniet (pievienojiet / noņemiet) kolekciju, turpretī ar iteratora palīdzību varat viegli atjaunināt kolekciju.
  • Tas ir kolekcijas API universālais kursors.
  • Metodes nosaukumi ir ļoti vienkārši un tos ir ļoti viegli izmantot.

Iteratora ierobežojumi Java

Iteratoriem Java ir šādi trūkumi:

  • Jūs varat veikt tikai atkārtotu virzienu uz priekšu, tas ir, vienvirziena atkārtotājs.
  • Iterator neatbalsta jauna elementa nomaiņu un pievienošanu.
  • ListIterator ir visspēcīgākais atkārtotājs, taču tas ir piemērots tikai sarakstā ieviestajām klasēm. Tātad tas nav universāls iterators.
  • Izmantojot CRUD operācijas, tas neatbalsta izveidošanas un atjaunināšanas darbības.
  • Salīdzinot to ar Spliterator, tas neļauj iterēt elementus paralēli. Tas nozīmē, ka tas atbalsta tikai secīgu atkārtojumu.
  • Tas neatbalsta labāku veiktspēju, lai atkārtotu lielu datu apjomu.

Tādējādi mēs nonākam līdz šī raksta beigām, kur mēs esam uzzinājuši par to, kā darbojas iterators Java. Ceru, ka jums ir skaidrs viss, kas ar jums ir kopīgots šajā apmācībā.

Ja jums šis raksts par tematu “Iterator Java” ir noderīgs, skatiet vietni uzticams tiešsaistes mācību uzņēmums ar vairāk nekā 250 000 apmierinātu izglītojamo tīklu visā pasaulē.

Mēs esam šeit, lai palīdzētu jums katrā solī jūsu ceļojumā, turklāt mēs piedāvājam mācību programmu, kas paredzēta studentiem un profesionāļiem, kuri vēlas būt Java izstrādātāji. Kurss ir paredzēts, lai dotu jums iespēju sākt Java programmēšanu un apmācīt gan Java, gan uzlabotas koncepcijas, kā arī dažādas Java struktūras, piemēram, Hibernate & Spring.

Ja rodas kādi jautājumi, droši uzdodiet visus jautājumus komentāru sadaļā “Iterator Java”, un mūsu komanda ar prieku atbildēs.