Rust hashmap datastruktur

Rust hashmap datastruktur
Et hashmap er en samling av nøkkelverdipar. Hashmaps er et gjensidig konsept i de fleste programmeringsspråk. Du kan ofte finne dem under forskjellige navngivninger, for eksempel hasj, ordbøker, kart, objekter og assosiative matriser.

Et hashmap inneholder en nøkkel og den tilsvarende verdien. I rust bestemmer en hashingfunksjon hvordan nøkkelen og verdiparene blir tildelt i minnet som administreres.

La oss fordele hvordan Hashmaps fungerer og hvordan vi bruker dem i rustprogrammene våre.

Hashmap -modul

For å bruke et hashmap, må vi importere HashMap -modulen fra Rust Standard Collections Library.

En importuttalelse er gitt nedenfor:

Bruk std :: Collections :: Hashmap;

Når vi er importert, kan vi bruke den til å jobbe med hashmaps i rust.

Rust skape hashmap

Vi kan definere en ny tom hashmap ved hjelp av den nye metoden. Et eksempel er gitt nedenfor:

Bruk std :: Collections :: Hashmap;
fn main ()
La mut user_info = hashmap :: new ();

Det forrige eksemplet oppretter et nytt tomt hashmap som lagrer brukerinformasjon. For å legge til elementer til Hashmap, kan vi bruke innsatsmetoden som vist i eksemplet nedenfor:

Bruk std :: Collections :: Hashmap;
fn main ()
La mut user_info = hashmap :: new ();
brukerinformasjon.Sett inn ("Russell", "California");
brukerinformasjon.Sett inn ("Donna", "Wyoming");
brukerinformasjon.Sett inn ("Franklin", "Colorado");
brukerinformasjon.Sett inn ("Elise", "Pennysylania");
brukerinformasjon.Sett inn ("Mason", "Virga");

For å skrive ut hashmappen, kan vi bruke println! Metode med feilsøkingstrekk som vist nedenfor:

Println!(":?", brukerinformasjon);

Dette skal returnere den komplette hash -kartinformasjonen som vist nedenfor:

"Mason": "Virgin", "Donna": "Wyoming", "Franklin": "Colorado", "Elise": "Pennysylania", "Russell": "California"

Rust iterert hashmap

Vi kan iterere over et hashmap ved hjelp av ITER -metoden. Et eksempel på illustrasjonen vist nedenfor:

for (nøkkel, verdi) i user_info.iter ()
Println!(": ", nøkkel, verdi);

ITER -metoden vil returnere et sett med nøkler og deres tilsvarende verdier. Et eksempelutgang er gitt nedenfor:

Donna: Wyoming
Russell: California
Mason: Virgina
Franklin: Colorado
Elise: Pennysylania

Rust sjekk om tasten eksisterer

For å sjekke om det finnes en tast i et hashmap, kan du bruke contain_key () -metoden. Et eksempel er vist nedenfor:

Println!("", brukerinformasjon.inneholder_key ("Elise"));

Funksjonen tar nøkkelen til å slå opp som et argument og returnerer en boolsk sann hvis nøkkelen eksisterer i hashmap.

Rust hente verdier

Du kan hente verdiene fra et kart ved hjelp av get -metoden. Funksjonen tar nøkkelen du ønsker å få tilgang til som argument og returnerer den tilsvarende verdien.

Et eksempel er gitt nedenfor:

Println!(":?", brukerinformasjon.Get ("Mason"));

Hvis den spesifiserte tasten eksisterer i samlingen, vil Rust returnere den tilhørende verdien og en ingen hvis nøkkelen ikke er funnet.

Rustoppdatering hashmap

Du kan oppdatere et nøkkelverdipar i et hashmap ved å gi en unik verdi til en eksisterende nøkkel. Et eksempel er gitt nedenfor:

brukerinformasjon.Sett inn ("Mason", "Texas");
Println!(":?", brukerinformasjon.Get ("Mason"));

Siden nøkkelen "Mason" allerede eksisterer i Hashmap, erstatter Rust automatisk verdien med den nye:

Noen ("Texas");

RUST Fjern nøkkelverdien

Vi kan fjerne et nøkkelverdipar fra et hashmap ved hjelp av fjerningsmetoden. Metoden tar nøkkelen vi ønsker å fjerne som argument.

Et eksempel er gitt nedenfor:

brukerinformasjon.Fjern ("Mason");

Konklusjon

Hashmaps spiller en kritisk rolle i å gi mangfold og utvidbarhet for programmene dine. Denne artikkelen gir en guide for bruk av hashmaps i rustprogrammeringsspråket og dets forskjellige bruksområder. Vi håper du fant denne artikkelen nyttig. Sjekk de andre Linux -hint -artiklene for flere tips og informasjon.