shuffledでリストの要素をランダムに並び替える

Kotlin
記事内に広告が含まれる場合があります

Kotlinには、リストの要素をランダムに並び替える shuffled という便利な関数があります。シャッフル処理を手軽に行えるため、ゲームやテストデータの生成などに役立ちます。

shuffledの基本的な使い方

1. シンプルなリストのシャッフル

Kotlin
val numbers = listOf(1, 2, 3, 4, 5)

val shuffledNumbers = numbers.shuffled()

println(shuffledNumbers) // 出力例: [3, 1, 5, 2, 4](実行ごとに異なる)

shuffled() を呼び出すだけで、リストの要素をランダムな順序に並び替えることができます。


2. シード値を指定して同じ順序のシャッフルを再現

Kotlin
import kotlin.random.Random

val seed = 42
val shuffledWithSeed = numbers.shuffled(Random(seed))

println(shuffledWithSeed) // 出力例: [2, 4, 1, 5, 3](同じシード値なら結果が同じ)

シード値を指定すると、同じ順序でシャッフルを再現できます。


3. リストを複数回シャッフルする

Kotlin
repeat(3) {
    println(numbers.shuffled())
}
// 出力例: 
// [4, 1, 5, 2, 3]
// [3, 5, 1, 2, 4]
// [2, 1, 4, 5, 3]

repeat を使えば、異なる並び順を繰り返し生成できます。


shuffledを活用するメリット

  1. リストのランダム化を簡単に実装できる
  2. シード値を指定すれば再現性のあるシャッフルが可能
  3. ゲームやテストデータの作成に最適

リストの要素をランダムに並び替えたい場合は、ぜひ shuffled を活用してみてください!

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