Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗rsPmMuCm 211 of 373 menu
◀ ▶

Многомерные комбинации в Rust

Массив векторов

Массив может хранить векторы. У каждой ячейки своя длина. Сначала берут вектор по индексу массива, затем элемент вектора:

let rows = [vec![1, 2], vec![3, 4, 5]]; println!("{}", rows[1][2]); // выведет 5

Карта векторов

Значением пары карты может быть вектор. Сначала вектор получают по ключу, затем элемент по индексу:

use std::collections::HashMap; fn main() { let map: HashMap<&str, Vec<i32>> = HashMap::from([ ("a", vec![1, 2, 3]), ("b", vec![4, 5, 6]), ]); println!("{}", map["a"][1]); // выведет 2 }

Вектор карт

Вектор может хранить карты. Сначала выбирают карту по индексу вектора, затем значение по ключу:

use std::collections::HashMap; fn main() { let table = vec![ HashMap::from([("id", 1), ("age", 27)]), HashMap::from([("id", 2), ("age", 31)]), ]; println!("{}", table[1]["age"]); // выведет 31 }

Дан массив векторов:

let rows = [vec!['x', 'y'], vec!['z', 'w', 'v']];

Выведите второй символ первого вектора.

Дана карта векторов:

let map: HashMap<&str, Vec<i32>> = HashMap::from([ ("Ann", vec![5, 4, 5]), ("Bob", vec![3, 5, 4]), ]);

Выведите вторую оценку ученика "Bob".

Дан вектор карт:

let table = vec![ HashMap::from([("city", "Paris"), ("code", "33")]), HashMap::from([("city", "Rome"), ("code", "39")]), ];

Выведите название города из второй карты.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить