rust-quiz:026-iterator-lazy-map.rs

godme發表於2022-07-15
fn main() {
    let input = vec![1, 2, 3];

    let parity = input
        .iter()
        .map(|x| {
            print!("{}", x);
            x % 2
        });

    for p in parity {
        print!("{}", p);
    }
}
  • lazy
    對於迭代器,裡面的操作都是懶載入。
    具體有多懶?題目中的p你可以看做一種特殊的閉包。
    或者這樣進行理解:p = _p(),而其中的_p如下
    _p = |x| {
    println!("{}", x);
    x % 2
    }

如上所述,因此列印的是112031

本作品採用《CC 協議》,轉載必須註明作者和本文連結

相關文章