Функция minOf

Функция minOf возвращает наименьшее из двух или более переданных значений. Может использоваться как с примитивными типами, так и с объектами, реализующими интерфейс Comparable. Также доступна для работы с коллекциями для поиска минимального элемента.

Импорт

kotlinimport kotlin.comparisons.minOf

Синтаксис для значений

kotlinfun minOf(a: Int, b: Int): Int
kotlinfun minOf(a: Long, b: Long): Long
kotlinfun minOf(a: Float, b: Float): Float
kotlinfun minOf(a: Double, b: Double): Double
kotlinfun minOf(a: Byte, b: Byte): Byte
kotlinfun minOf(a: Short, b: Short): Short
kotlinfun <T : Comparable<T>> minOf(a: T, b: T): T
kotlinfun <T : Comparable<T>> minOf(a: T, b: T, c: T): T
kotlinfun minOf(vararg values: Int): Int

Синтаксис для коллекций

kotlinfun <T> Array<out T>.minOf(selector: (T) -> Double): Double
kotlinfun <T> Iterable<T>.minOf(selector: (T) -> Double): Double
kotlinfun <K, V> Map<out K, V>.minOf(selector: (Map.Entry<K, V>) -> Double): Double

Пример

Найдем минимальное из трех целых чисел:

kotlinval a = 5
val b = 2
val c = 8
val res = minOf(a, b, c)
println(res)

Результат выполнения кода:

kotlinInt 2

Пример

Найдем минимальное число в массиве с помощью селектора:

kotlinval numbers = arrayOf(15, 8, 23, 4, 42)
val res = numbers.minOf { it }
println(res)

Результат выполнения кода:

kotlinInt 4

Пример

Найдем минимальную длину строки в списке:

kotlinval words = listOf("apple", "banana", "cherry", "date")
val res = words.minOf { it.length }
println(res)

Результат выполнения кода:

kotlinInt 4

Пример

Найдем минимальное значение в множестве Set:

kotlinval set = setOf(3.14, 2.71, 1.62, 9.81)
val res = set.minOf { it }
println(res)

Результат выполнения кода:

kotlinDouble 1.62

Пример

Найдем минимальное значение в словаре Map по значениям:

kotlinval map = mapOf("a" to 100, "b" to 50, "c" to 200)
val res = map.minOf { it.value }
println(res)

Результат выполнения кода:

kotlinInt 50

Для каких коллекций работает

Функция minOf работает со следующими типами коллекций:

Смотрите также

  • функцию maxOf,
    которая находит максимальное значение
  • функцию min,
    которая находит минимальный элемент без селектора
  • функцию minBy,
    которая находит элемент с минимальным значением по селектору