Iterator::flat_map()

Map с последующим разглаживанием вложенных итераторов.

Сигнатураfn flat_map<U: IntoIterator, F: FnMut(Self::Item) -> U>(self, f: F) -> FlatMap<...>

Применяет функцию, возвращающую итератор для каждого элемента, и сшивает все результаты в один плоский поток.

let words = vec!["ab", "cd"];
let chars: Vec<char> = words.iter().flat_map(|s| s.chars()).collect();
println!("{:?}", chars); // ['a', 'b', 'c', 'd']
← Все записи: Стандартная библиотека Rust
Поддержать проект