Загружаем изображение…
По-старому буду называть эту структуру словарём. Хотя есть ещё одно название "ассоциированный массив". Но вот в rust это называется хэшем.

А смысл в следующем. Это список пар (ключ, значение). В rust все ключи и все значения должны быть одного типа. Хотя как обычно это требование обходится с помощью enum - перечисления. Я об этом расскажу позднее. Ниже представлен пример программы формирования хэша, перебор всех пар и получения значения по ключу.

use std::collections::HashMap;

fn main() {
// задать
   let mut sl = HashMap::new();
// добавить значения
   sl.insert(String::from("Иванов И.И."), 120000);
   sl.insert(String::from("Петров П.П."), 70000);
   sl.insert(String::from("Пупкина З.В."), 80000);
   sl.insert(String::from("Васильев-Задунайский Р.Р."), 90000);
// перебор
   for (name, salary) in &sl {
       println!("{} - {}", name, salary);
   }
// доступ по ключу
   let key = "Пупкина З.В.".to_string();
   match sl.get(&key) {
      Some(&sal) => println!("{} - {}", key,  sal),
      None => println!("{} Нет такого!", key),
   }
}

Не забывайте указать библиотеку для импортирования: use std::collections::HashMap;.

Да, доступ к значению по ключу очень быстрый. Этим и ценна данная структура.
Просмотры: 119
Открыть в MAX Сообщить о неточности

Сообщить о неточности

Опишите, что нужно исправить. Если есть источник, добавьте ссылку.

Вы покидаете datool.ru

Ссылка ведёт на внешний сайт. datool.ru не отвечает за его содержимое — проверьте адрес, прежде чем вводить пароли или платёжные данные.

Переход через 10 с

Перейти