【发布时间】:2020-10-12 04:58:59
【问题描述】:
假设我在 Kotlin 中有以下代码:
val min = listOf("hello", "", "teeeeeest").minBy { it.length }
我从 minBy 的实现中了解到,它跟踪变量中的 minValue 并遍历整个集合并在找到更小的元素时对其进行更新。
在字符串的情况下,我们知道任何元素的值都不能小于 0,因此空字符串 "" 是最佳的,可以停止迭代。
有没有办法告诉 minBy(或 maxBy)最佳值,以便一旦达到它就可以停止?如果没有,我怎样才能最容易地实现呢?
【问题讨论】:
标签: kotlin lambda collections max minimum