Запись на курсы по HTML, CSS, JavaScript, PHP, Python, фреймворкам и CMS,
а также: помощь в поиске работы и заказов, стажировка на реальных проектах→
396 of 1310 menu
Бесплатный тренинг по PHP: форматирование строк. Начало 25 сентября. Жми для записи!

Функция 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,
    которая возвращает последний элемент коллекции