Метод product
Метод product перемножает все элементы итератора
и возвращает итоговое произведение. Он работает с
любыми числовыми типами, для которых реализованы
операции умножения и сложения. Метод не принимает
параметров и возвращает значение того же типа, что
и элементы итератора.
Синтаксис
iterator.product()
Пример
Давайте перемножим все элементы вектора
[1, 2, 3, 4, 5]:
fn main()
{
let res: i32 = vec![1, 2, 3, 4, 5].iter().product();
println!("{}", res);
}
Результат выполнения кода:
120
Пример
Давайте перемножим все элементы вектора
[2, 3, 4]:
fn main()
{
let res: i32 = vec![2, 3, 4].iter().product();
println!("{}", res);
}
Результат выполнения кода:
24
Пример
Если итератор пустой, метод product
возвращает единицу. Давайте проверим это:
fn main()
{
let res: i32 = vec![].iter().product();
println!("{}", res);
}
Результат выполнения кода:
1