Iterator::find

    1. fn main() {
    2. let vec1 = vec![1, 2, 3];
    3. let vec2 = vec![4, 5, 6];
    4. // 对 vec 产出 `&i32` 类型。
    5. let mut iter = vec1.iter();
    6. let mut into_iter = vec2.into_iter();
    7. // 产出内容的引用是 `&&i32` 类型。解构成 `i32` 类型。
    8. println!("Find 2 in vec1: {:?}", iter .find(|&&x| x == 2));
    9. // 产出内容的引用是 `&i32` 类型。解构成 `i32` 类型。
    10. println!("Find 2 in vec2: {:?}", into_iter.find(| &x| x == 2));
    11. let array2 = [4, 5, 6];
    12. // 对数组 `iter()` 产出 `&i32`。
    13. println!("Find 2 in array1: {:?}", array1.iter() .find(|&&x| x == 2));
    14. // 对数组的 `into_iter()` 通常产出 `&i32``。
    15. println!("Find 2 in array2: {:?}", array2.into_iter().find(|&&x| x == 2));
    16. }