mmaillot
03/01/2019, 12:50 PMdiesieben07
03/01/2019, 12:53 PMinline fun <reified E : Enum<E>> randomValue(): E {
return randomValue(E::class.java)
}
fun <E : Enum<E>> randomValue(cls: Class<E>): E {
return cls.enumConstants.random()
}
val rnd = randomValue<Foo>()
// or
val rnd = randonValue(Foo::class.java)
mmaillot
03/01/2019, 12:56 PMMark McCormick
03/01/2019, 1:14 PMYourEnumClass.values().withIndex().shuffled().first().value
diesieben07
03/01/2019, 1:15 PMDico
03/02/2019, 1:23 PMenumValues<E>().let { it[Random.nextInt(size)] }