Функция randomOrNull
Функция randomOrNull возвращает случайный элемент
из коллекции или null, если коллекция пустая.
Работает с массивами Array, списками List,
множествами Set и ассоциативными массивами Map.
Для Map возвращается случайная пара ключ-значение.
Импорт
kotlinimport kotlin.collections.randomOrNull
Синтаксис
kotlin// Для Iterable (List, Set)
fun <T> Iterable<T>.randomOrNull(): T?
kotlin// Для Array
fun <T> Array<T>.randomOrNull(): T?
kotlin// Для Map
fun <K, V> Map<K, V>.randomOrNull(): Map.Entry<K, V>?
Пример
Получим случайный элемент из списка:
kotlinval list = listOf(1, 2, 3, 4, 5)
val res = list.randomOrNull()
println(res)
Результат выполнения кода:
kotlinInt 3
Пример
Получим случайный элемент из пустого списка:
kotlinval emptyList = emptyList<String>()
val res = emptyList.randomOrNull()
println(res)
Результат выполнения кода:
kotlinnull
Пример
Получим случайный элемент из массива:
kotlinval array = arrayOf('a', 'b', 'c', 'd', 'e')
val res = array.randomOrNull()
println(res)
Результат выполнения кода:
kotlinChar 'c'
Пример
Получим случайную пару ключ-значение из Map:
kotlinval map = mapOf("key1" to 100, "key2" to 200, "key3" to 300)
val res = map.randomOrNull()
println(res)
Результат выполнения кода:
kotlinkey2=200
Пример
Использование с безопасным вызовом для обработки null:
kotlinval numbers = listOf(10, 20, 30)
val randomNumber = numbers.randomOrNull()?.plus(5)
println(randomNumber)
Результат выполнения кода:
kotlinInt 25
Смотрите также
-
функцию
random,
которая выбрасывает исключение для пустой коллекции -
функцию
firstOrNull,
которая возвращает первый элемент илиnull -
функцию
lastOrNull,
которая возвращает последний элемент илиnull -
функцию
isEmpty,
которая проверяет коллекцию на пустоту