enum class Rank {
GOLD, SILVER, BRONZE
}
ランクなしという意味の null を含むリストを作りたいとします。
↓ 作りたいリスト
val list: List<Rank?> = ...
println(list) // [null, GOLD, SILVER, BRONZE]
Rank の一覧は Rank.values() で取れるので
val ranks: Array<Rank> = Rank.values()
println(ranks.joinToString()) // GOLD, SILVER, BRONZE
listOf(null) で null だけのリストを作って + で ranks と合わせたリストを作ることもできますが、
val list: List<Rank?> = listOf(null) + ranks
スプレット演算子を使うと余計なリスト(= null だけのリスト)を作らずに済みます。
val list: List<Rank?> = listOf(null, *ranks)