Rust filter()で配列の要素をフィルタリングするサンプル

環境
Windows 10 Home 64bit
rustc 1.66.0

構文
let 配列名1 = vec![要素1, 要素2, …];
配列名.iter().cloned().filter(|&入力変数| bool値)
filter関数を使って配列に指定条件を満たすデータを取り除きます
filter() は各要素を1つずつ見ていって条件に合う要素を抽出します。

使用例

fn main() {

  let cft = vec![31, 12, 42, 12, 63, 12, 12, 74];
    let res = cft.iter().cloned()    // ひとつずつ中身を並べる
        .filter(|&i| i != 12)    // 12でないものだけ残す
        .collect::<Vec<_>>();    // それらを集めて配列にする
    println!("{:?}", res);

}

実行結果
[31, 42, 63, 74]

Rust

Posted by arkgame