I Java, en Iterator er en av Java-pekerne. Java Iterator er et grensesnitt som praktiseres for å iterere over en samling av Java-objektkomponenter i sin helhet én etter én. Det er gratis å bruke i programmeringsspråket Java siden Java 1.2 Collection-rammeverket. Den tilhører java.util-pakken.
Selv om Java Iterator ble introdusert i Java 1.2, er det fortsatt ikke det eldste verktøyet som er tilgjengelig for å gå gjennom elementene i Collection-objektet. Den eldste iteratoren i Java-programmeringsspråket er Enumerator-forutgående Iterator. Java Iterator-grensesnittet etterfølger enumerator-iteratoren som ble praktisert i begynnelsen for å krysse over noen tilgjengelige samlinger som ArrayLists.
Java Iterator er også kjent som universell markør av Java ettersom det passer for alle klassene i samlingsrammeverket. Java Iterator hjelper også med operasjoner som READ og FJERN. Når vi sammenligner Java Iterator-grensesnittet med enumeration iterator-grensesnittet, kan vi si at navnene på metodene som er tilgjengelige i Java Iterator er mer presise og enkle å bruke.
Fordeler med Java Iterator
Iterator i Java ble veldig utbredt på grunn av sine mange fordeler. Fordelene med Java Iterator er gitt som følger -
- Brukeren kan bruke disse iteratorene på hvilken som helst av klassene i samlingsrammeverket.
- I Java Iterator kan vi bruke både lese- og fjernoperasjoner.
- Hvis en bruker jobber med en for-løkke, kan de ikke modernisere (legge til/fjerne) samlingen, mens hvis de bruker Java Iterator, kan de ganske enkelt oppdatere samlingen.
- Java Iterator regnes som Universal Cursor for Collection API.
- Metodenavnene i Java Iterator er veldig enkle og er veldig enkle å bruke.
Ulemper med Java Iterator
Til tross for de mange fordelene, har Java Iterator også forskjellige ulemper. Ulempene med Java Iterator er gitt nedenfor -
- Java Iterator bevarer bare iterasjonen i foroverretningen. Med enkle ord er Java Iterator en enveis Iterator.
- Utskifting og utvidelse av en ny komponent er ikke godkjent av Java Iterator.
- I CRUD Operations holder ikke Java Iterator de forskjellige operasjonene som CREATE og UPDATE.
- Sammenlignet med Spliterator, støtter ikke Java Iterator kryssende elementer i det parallelle mønsteret, noe som innebærer at Java Iterator kun støtter sekvensiell iterasjon.
- Sammenlignet med Spliterator, støtter ikke Java Iterator mer pålitelig utførelse for å krysse bulkvolumet av data.
Hvordan bruker jeg Java Iterator?
Når en bruker trenger å bruke Java Iterator, er det obligatorisk for dem å lage en forekomst av Iterator-grensesnittet fra samlingen av objekter de ønsker å krysse over. Etter det opprettholder den mottatte iteratoren sporet til komponentene i den underliggende samlingen for å sikre at brukeren vil krysse over hvert av elementene i samlingen av objekter.
Hvis brukeren modifiserer den underliggende samlingen mens han går over en iterator som fører til den samlingen, vil iteratoren vanligvis erkjenne det og vil kaste et unntak neste gang når brukeren vil forsøke å hente den neste komponenten fra iteratoren.
Java Iterator-metoder
Følgende figur viser perfekt klassediagrammet til Java Iterator-grensesnittet. Den inneholder totalt fire metoder som er:
- hasNext()
- neste()
- fjerne()
- forEachRemaining()
De forEachRemaining() metode ble lagt til i Java 8. La oss diskutere hver metode i detalj.
Hvis det ikke er flere elementer igjen i iterasjonen, er det ikke nødvendig å kalle neste()-metoden. Med enkle ord kan vi si at metoden brukes til å bestemme om neste()-metoden skal kalles eller ikke.
Eksempel på Java Iterator
Nå er det på tide å kjøre et Java-program for å illustrere fordelen med Java Iterator-grensesnittet. Koden nedenfor produserer en ArrayList med bynavn. Deretter initialiserer vi en iterator ved å bruke iterator ()-metoden til ArrayList. Etter det krysses listen for å representere hvert element.
arv i c++
JavaIteratorExample.java
import java.io.*; import java.util.*; public class JavaIteratorExample { public static void main(String[] args) { ArrayList cityNames = new ArrayList(); cityNames.add('Delhi'); cityNames.add('Mumbai'); cityNames.add('Kolkata'); cityNames.add('Chandigarh'); cityNames.add('Noida'); // Iterator to iterate the cityNames Iterator iterator = cityNames.iterator(); System.out.println('CityNames elements : '); while (iterator.hasNext()) System.out.print(iterator.next() + ' '); System.out.println(); } }
Produksjon:
CityNames elements: Delhi Mumbai Kolkata Chandigarh Noida
Poeng å huske
- Java Iterator er et grensesnitt lagt til i Java-programmeringsspråket i Java 1.2 Collection-rammeverket. Den tilhører java.util-pakken.
- Det er en av Java-markørene som øves på å krysse objektene i samlingsrammeverket.
- Java Iterator brukes til å iterere komponentene i samlingsobjektet én etter én.
- Java Iterator er også kjent som den universelle markøren til Java, da den passer for alle klassene i samlingsrammeverket.
- Java Iterator støtter også operasjoner som READ og REMOVE.
- Metodenavnene til Iterator-klassen er veldig enkle og enkle å bruke sammenlignet med metodenavnene til Enumeration Iterator.