Rust Hashmap

Rust Hashmap
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 navngivning som hasj, ordbøker, kart, objekter, assosiative matriser osv.

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 bryte ned hvordan Hashmaps fungerer og hvordan vi bruker dem i rustprogrammene våre.

Hashmap -modul

For å bruke et hashmap, må vi impære Hashmap -modulen fra Rust Standard Collections -biblioteket.

En importuttalelse er som vist:

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 et nytt tomt hasjkart ved hjelp av den nye metoden. Et eksempel er som vist nedenfor:

USESTD :: Collections :: Hashmap;
fnMain ()
letmutuser_info = hashmap :: new ();

Ovennevnte oppretter et nytt tomt hasjkart som lagrer brukerinformasjon. For å legge til elementer på hash -kartet, kan vi bruke innsatmetoden som vist i eksemplet nedenfor:

fnMain ()
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 hashkartet, kan vi bruke println! Metode med feilsøkingstrekk som vist:

Println!(":?", brukerinformasjon);

Dette skal returnere den komplette hash -kartinformasjonen.

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

Rust iterert hasjkart.

Vi kan iterere over et hasjkart ved hjelp av ITER -metoden. Et eksempel på illustrasjonen er som 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 som vist:

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

Rust sjekk om tasten eksisterer

For å sjekke om en tast eksisterer på et hasjkart, kan du bruke contain_key () -metoden. Et eksempel er som vist:

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

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

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 som vist:

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 på et hasjkart ved å gi en unik verdi til en eksisterende nøkkel. Et eksempel er som vist:

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

Siden nøkkelen "Mason" allerede eksisterer på hasjkartet, erstatter Rust automatisk verdien med den nye.

Noen ("Texas");

RUST Fjern nøkkelverdien

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

Et eksempel er som vist:

brukerinformasjon.Fjern ("Mason");

Siste tanker

Hashmaps spiller en kritisk rolle i å gi mangfold og utvidbarhet for programmene dine. Fortsett å øve!