Denne artikkelen vil diskutere iteratorer i rust, hvordan de implementeres, og hvordan du bruker dem.
Rust iterator
En iterator refererer til en funksjon som lar deg "gå gjennom" en sekvens av elementer. Som nevnt kan det være iterasjon av hvert element i en matrise.
Iteratorer i rust er lat. Dette betyr at iteratoren ikke trenger å vite på forhånd antall elementer den vil "gå gjennom". Det bestemmer neste element hvis det blir bedt om det.
Rust iteratortrekk
Iteratorer implementeres av Iterator -egenskapen definert i Rust Standard Library. Dette betyr at vi kan bruke iteratortypen på primitive typer eller en tilpasset samling ved å gi typen til egenskap og neste metode.
Syntaksen for iteratortrekk er som vist:
Pub Trait IteratorFor å implementere iteratortrekket på tilpassede typer, må vi definere neste metode, som returnerer ett element om gangen pakket inn som noen () eller ingen når iterasjonen er fullført.
Tenk på følgende kode som implementerer en iterator for en tilpasset struktur:
structCountHer har vi en struktur som har en verdi på i32. Neste er en tellekonstruktør for strukturen. Vi implementerer også en iterator for strukturen ved å bruke neste funksjon. Dette returnerer neste element i sekvensen.
Merk: Returverdien er alternativ.
Dette lar oss returnere ingen hvis det ikke er noen neste vare.
Deretter kan vi bruke denne iteratoren som:
For jeg i count :: new ()Konklusjon
Denne artikkelen diskuterte arten av Rust Iterator og dens betydning. I tillegg gikk vi inn i Rust Iterator -egenskapen og metodene for å implementere Rust Iterator i tilpassede typer. Vi håper du fant denne artikkelen nyttig. Sjekk de andre Linux -hint -artiklene for flere tips og informasjon.