[Rust]配列(array)の要素をランダムに取得するには?

Rust

どうも、ちょげ(@chogetarou)です。

配列(array)の要素をランダムに取得する方法を紹介します。

スポンサーリンク

方法

インターフェース, インターネット, プログラム, ブラウザ, Www

配列(array)の要素をランダムに取得するには、choose()thread_rng()を使います。

まず、必要なモジュールをインポートします。

use rand::seq::SliceRandom;

次に、配列からchoose()を呼び出します。

choose()の引数に「&mut rand::thread_rng()」を指定します。

最後にchoose()からunwrap()を呼び出します。

//array=対象の配列
array.choose(&mut rand::thread_rng()).unwrap();

上記のchoose()は、呼び出した配列(array)の要素をランダムに取得します。

使用例

use rand::seq::SliceRandom;

fn main(){
    let num: [i32; 5] = [1, 2, 3, 4, 5];
    
    for _ in  0..5 {
        println!("{:?}", num.choose(&mut rand::thread_rng()).unwrap());
    }
}
出力:
4
2
2
1
4

コメント

タイトルとURLをコピーしました