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を活用するメリット
- リストのランダム化を簡単に実装できる
- シード値を指定すれば再現性のあるシャッフルが可能
- ゲームやテストデータの作成に最適
リストの要素をランダムに並び替えたい場合は、ぜひ shuffled
を活用してみてください!