Hashmap de ferrugem

Hashmap de ferrugem
Um hashmap é uma coleção de pares de valores-chave. Hashmaps é um conceito mútuo na maioria das linguagens de programação. Muitas vezes, você pode encontrá -los sob uma nomeação diferente, como um hash, dicionários, mapas, objetos, matrizes associativas, etc.

Um hashmap contém uma chave e seu valor correspondente. Na ferrugem, uma função de hash determina como os pares de chave e valor são alocados na memória gerenciada.

Vamos quebrar como os hashmaps funcionam e como usá -los em nossos programas de ferrugem.

Módulo HashMap

Para usar um hashmap, precisamos implementar o módulo hashmap da biblioteca de coleções padrão da ferrugem.

Uma declaração de importação é como mostrado:

Use STD :: Coleções :: Hashmap;

Uma vez importado, podemos usá -lo para trabalhar com hashmaps em ferrugem.

Rust Crie hashmap

Podemos definir um novo mapa de hash vazio usando o novo método. Um exemplo é como mostrado abaixo:

usestd :: Coleções :: Hashmap;
fnmain ()
letmutuser_info = hashmap :: new ();

O acima cria um novo mapa de hash vazio que armazena informações do usuário. Para adicionar elementos ao mapa de hash, podemos usar o método de inserção, como mostrado no exemplo abaixo:

fnmain ()
Deixe mut user_info = hashmap :: new ();
informação de usuário.inserir ("Russell", "Califórnia");
informação de usuário.inserir ("Donna", "Wyoming");
informação de usuário.inserir ("Franklin", "Colorado");
informação de usuário.inserir ("elise", "Pennysylania");
informação de usuário.inserir ("Mason", "Virgina");

Para imprimir o mapa de hash, podemos usar a impressão! Método com o traço de depuração como mostrado:

println!(":?", informação de usuário);

Isso deve devolver as informações completas do mapa de hash.

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

Mapa de hash iteração de ferrugem.

Podemos iterar sobre um mapa de hash usando o método ITER. Um exemplo de ilustração é como mostrado abaixo:

para (chave, valor) em user_info.iter ()
println!(": ", valor chave);

O método ITER retornará um conjunto de chaves e seus valores correspondentes. Um exemplo de saída é como mostrado:

Donna: Wyoming
Russell: Califórnia
Mason: Virgina
Franklin: Colorado
Elise: Pennysylânia

Verifique se a chave existe

Para verificar se existe uma chave em um mapa de hash, você pode usar o método contains_key (). Um exemplo é como mostrado:

println!("", informação de usuário.contém_key ("elise"));

A função leva a chave para procurar como argumento e retorna um verdadeiro booleano se a chave existir no mapa de hash.

Valores de recuperação de ferrugem

Você pode recuperar os valores de um mapa usando o método get. A função leva a chave que você deseja acessar como argumento e retorna o valor correspondente.

Um exemplo é como mostrado:

println!(":?", informação de usuário.obter ("Mason"));

Se a chave especificada existir na coleção, a ferrugem retornará o valor associado e um nenhum se a chave não for encontrada.

Atualização de ferrugem Hashmap

Você pode atualizar um par de valores-chave em um mapa de hash, passando um valor único para uma chave existente. Um exemplo é como mostrado:

informação de usuário.inserir ("Mason", "Texas");
println!(":?", informação de usuário.obter ("Mason"));

Como a chave "Mason" já existe no mapa de hash, Rust substitui automaticamente seu valor com o novo.

Alguns ("Texas");

Ferrugem remova o valor da chave

Podemos remover um par de valores-chave de um mapa de hash usando o método Remover. O método leva a chave que desejamos remover como argumento.

Um exemplo é como mostrado:

informação de usuário.remover ("Mason");

Pensamentos finais

Hashmaps desempenham um papel crítico no fornecimento de diversidade e extensibilidade para seus programas. Continue praticando!