Use map to transform items, filter to keep items matching a condition, and fold to reduce a collection into a single value by passing closures to iterator methods.
let numbers = vec![1, 2, 3, 4, 5];
// Map: square each number
let squared: Vec<i32> = numbers.iter().map(|&x| x * x).collect();
// Filter: keep only even numbers
let evens: Vec<i32> = numbers.iter().filter(|&&x| x % 2 == 0).collect();
// Fold: sum all numbers
let sum: i32 = numbers.iter().fold(0, |acc, &x| acc + x);