В Rust, если у вас есть коллекция пар ключ-значение, вы можете перебирать их, используя цикл for. Для этого можно использовать несколько различных методов:
- Использование
iter()иfor_each(): вы можете вызвать методiter()в коллекции, чтобы получить итератор по парам ключ-значение. Затем вы можете использовать методfor_each()для перебора каждой пары. Вот пример:
let map = hashmap!{"key1" => "value1", "key2" => "value2", "key3" => "value3"};
map.iter().for_each(|(key, value)| {
// Do something with key and value
println!("Key: {}, Value: {}", key, value);
});
- Использование сопоставления с образцом в цикле
for: Rust позволяет использовать сопоставление с образцом в циклеforдля непосредственной деструктуризации пар ключ-значение. Вот пример:
let map = hashmap!{"key1" => "value1", "key2" => "value2", "key3" => "value3"};
for (key, value) in &map {
// Do something with key and value
println!("Key: {}, Value: {}", key, value);
}
- Использование
into_iter()и деструктуризации кортежа. Если вы хотите использовать коллекцию и стать владельцем пар ключ-значение, вы можете использовать методinto_iter(). и деструктуризация кортежей. Вот пример:
let map = hashmap!{"key1" => "value1", "key2" => "value2", "key3" => "value3"};
for (key, value) in map.into_iter() {
// Do something with key and value
println!("Key: {}, Value: {}", key, value);
}
Это несколько методов, которые вы можете использовать для перебора пар ключ-значение в Rust. Каждый метод имеет свои преимущества в зависимости от вашего конкретного случая использования.