Hvad er en iterator?

En iterator er en computersprogskonstruktion, der giver et program mulighed for at læse gennem en gruppe af dataværdier eller informationsstykker på en systematisk måde. Iteratorer giver også mulighed for individuel adgang til hvert medlem af gruppen uden at påvirke resten af ​​gruppen. De bruges på mange scripting- og programmeringssprog, herunder C ++, Java, PHP og Perl. Deres implementering er uafhængig af de objekter, de scanner, så de kan scanne enhver form for en gruppe objekter.

At rejse gennem en gruppe objekter med en iterator kaldes normalt iterering eller krydsning. På de fleste computersprog bruges iteratorer til at krydse grupper af relaterede objekter kaldet samlinger. Deres implementeringer er meget fleksible og kan bruges med samlinger af enhver størrelse. De er generelt sikrere end simpel elementadgang i en samling, fordi deres rækkevidde er begrænset til elementerne i samlingen. Selvom det stadig er muligt at få adgang til et indeks uden for grænserne, er det ikke sandsynligt, hvis ITERator bruges korrekt.

iteratorer defineres, initialiseres og håndteres i hukommelsen forskelligt afhængigt af det computersprog, de bruges i. Den generelle syntaks for dem er derimod ens på de fleste sprog. Der er to forskellige typer syntaks, der kan bruges til iteratorer, defineret som eksplicit eller implicit.

Eksplicit iteratorer involverer oprettelse af et iteratorobjekt, og det objekt bruges derefter i en traversal loop over elementerne i en samling. Implicit iteratorer involverer en speciel type loopstruktur, der opretter iteratorobjektet uden at det er specificeret på forhånd. Hvorvidt eksplicitte eller implicitte iteratorer bruges til en bestemt gennemgang afhænger normalt af programmererens præference, da forskelle i mængden af ​​kode eller ydeevne mellem dem er ubetydelige. Den største forskel mellem eksplicitte og implicitte iteratorer er det, der forklarerICIT -iteratorer viser oprettelsen af ​​en iterator i kildekode, mens implicit iteratorer ikke viser dette.

Hver gang en samling af objekter er tilgængelig, kan en iterator bruges til at scanne dem. Afhængig af kapaciteterne på et computersprog, kan iteratorer bruges på arrays, kort, lister og en række andre indsamlingstyper. Iteratorer er et relativt allestedsnærværende træk ved programmeringssprog, og mest almindelige sprog har en eller anden form for funktionalitet til rådighed. Nogle computersprog tillader iteratorer med yderligere funktioner, såsom begrænsninger for antallet af gange, der er adgang til et element. Da disse funktioner ikke er universelle, er der undertiden måder, hvorpå de kan implementeres uafhængigt af iteratorerne selv.

ANDRE SPROG

Hjalp denne artikel dig? tak for tilbagemeldingen tak for tilbagemeldingen

Hvordan kan vi hjælpe? Hvordan kan vi hjælpe?