min By
Требования к платформе и версии: Common (1.7)
inline fun <T, R : Comparable<R>> Sequence<T>.minBy(selector: (T) -> R): T
Возвращает первый элемент, для которого функция selector возвращает наименьшее значение.
Если функция selector возвращает несколько одинаковых минимальных значений, эта функция возвращает первый из соответствующих им элементов.
Обратите внимание: функция selector не вызывается, если последовательность содержит ноль или один элемент, поскольку в этих случаях очевидно, какой элемент нужно вернуть, и вызывать selector не требуется. Поэтому рекомендуется не полагаться на побочные эффекты, возникающие при вызове функции selector для каждого элемента.
Операция является терминальной.
Исключения
если последовательность пуста.
Примеры
import kotlin.math.*
import kotlin.test.*
fun main() {
//sampleStart
val strings = listOf("abcd", "abc", "ab", "de", "abcde")
val longestString = strings.maxBy { it.length }
println(longestString) // abcde
val shortestString = strings.minBy { it.length }
println(shortestString) // ab
val emptyList = emptyList<String>()
// maxBy() and minBy() throw if the collection is empty
// emptyList.maxBy { it.length } // will fail with NoSuchElementException
// emptyList.minBy { it.length } // will fail with NoSuchElementException
// maxByOrNull() and minByOrNull() return null if the collection is empty
println(emptyList.maxByOrNull { it.length }) // null
println(emptyList.minByOrNull { it.length }) // null
//sampleEnd
}
Требования к платформе и версии: JVM (1.0)
inline fun <T, R : Comparable<R>> Sequence<T>.minBy(selector: (T) -> R): T?
Устарело
Предупреждение начиная с версии 1.4
Ошибка начиная с версии 1.5
Скрыто начиная с версии 1.6
Вместо этого используйте minByOrNull.
Заменить на
this.minByOrNull(selector)
© 2010–2026 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.sequences/min-by.html