Rust ベクタ(可変配列)の値が1つでも条件に一致するかを判定する

Rust ベクタ(可変配列)の値が1つでも条件に一致するかを判定する

Rustで、ベクタ(可変配列)の値が1つでも条件に一致するかを判定するサンプルコードを記述してます。Rustのバージョンは1.66.0を使用してます。ここでは、実際に実行した結果を画像で掲載してます。

環境

  • OS windows11 home
  • rustc 1.66.0

1つでも条件に一致するかを判定

1つでも条件に一致するかを判定するには、「iter().any」を使用します。

ベクタ.iter().any(|&x| 条件);

1つでも一致していれば「true」、どれも一致していなければ「false」が返ります

実際に使用してみます。

fn main() {

    let v = vec![ 1, 2, 3, 4, 5 ];

    println!("{:?}", v.iter().any(|&x| x >= 1)); // true

    println!("{:?}", v.iter().any(|&x| x == 3)); // true

    println!("{:?}", v.iter().any(|&x| x == 0)); // false

}

実行結果を見ると、判定されていることが確認できます。

空の配列

空の配列で判定すると、全て「false」が返ります。

fn main() {

    let v = vec![0; 0];

    println!("{:?}", v.iter().any(|&x| x >= 1)); // false

    println!("{:?}", v.iter().any(|&x| x == 3)); // false

    println!("{:?}", v.iter().any(|&x| x == 0)); // false

}

実行結果