Функция random
Функция random
возвращает случайный элемент из коллекции.
Применяется к массивам Array
, спискам List
,
множествам Set
и другим итерируемым коллекциям.
Для пустой коллекции функция выбрасывает исключение.
Импорт
import kotlin.collections.random
Синтаксис
fun <T> Collection<T>.random(): T
fun <T> Array<T>.random(): T
fun ByteArray.random(): Byte
fun ShortArray.random(): Short
fun IntArray.random(): Int
fun LongArray.random(): Long
fun FloatArray.random(): Float
fun DoubleArray.random(): Double
fun BooleanArray.random(): Boolean
fun CharArray.random(): Char
fun <T> Iterable<T>.random(): T
Пример
Получим случайный элемент из списка типа List
:
val list = listOf(1, 2, 3, 4, 5)
val res = list.random()
println(res)
Результат выполнения кода:
Int 3
Пример
Получим случайный элемент из массива типа Array
:
val array = arrayOf('a', 'b', 'c', 'd', 'e')
val res = array.random()
println(res)
Результат выполнения кода:
Char 'c'
Пример
Получим случайный элемент из множества типа Set
:
val set = setOf("apple", "banana", "orange")
val res = set.random()
println(res)
Результат выполнения кода:
String "banana"
Пример
Для числовых массивов функция возвращает значение соответствующего типа:
val intArray = intArrayOf(10, 20, 30, 40, 50)
val res = intArray.random()
println(res)
Результат выполнения кода:
Int 30
Пример
При попытке получить случайный элемент из пустой коллекции
функция выбрасывает исключение NoSuchElementException
:
val emptyList = emptyList<String>()
val res = emptyList.random()
println(res)
Результат выполнения кода:
Exception: java.util.NoSuchElementException: Collection is empty.
Смотрите также
-
функцию
randomOrNull
,
которая возвращаетnull
для пустой коллекции вместо исключения -
функцию
shuffled
,
которая возвращает новую коллекцию с перемешанными элементами -
функцию
first
,
которая возвращает первый элемент коллекции -
функцию
last
,
которая возвращает последний элемент коллекции