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

Kotlin

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

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

スポンサーリンク

方法

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

配列(Array)の要素をランダムに取得する方法は、2つあります。

random()

1つは、random()を使う方法です。

具体的な方法としては、array.random()のように、配列からrandom()を呼び出します。

array.random()

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

使用例

fun main() {
    val numbers = arrayOf(1, 2, 3, 4, 5)
    
    for (i in 1..5) {
        println(numbers.random())
    }
}
出力:
1
2
1
3
3

shuffled()

もう1つは、shuffled()を使う方法です。

まず、配列からasSequence()を呼び出します。

asSequence()からshuffled()を呼び出します。

そして、shuffled()からfirst()を呼び出します。

array.asSequence().shuffled().first()

上記のnumbers.asSequence().shuffled().first()は、asSequence()を呼び出した配列(Array)の要素をランダムに取得します。

使用例

fun main() {
    val numbers = arrayOf(1, 2, 3, 4, 5)
    
    for (i in 1..5) {
        println(numbers.asSequence().shuffled().first())
    }
}
出力:
4
2
2
3
2

まとめ

配列(Array)の要素をランダムに取得する方法は、次の2つです。

  • random()を使う方法
    array.random()
  • shuffled()を使う方法
    array.asSequence().shuffled().first()

コメント

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