Scala TraversableOnce
有maxBy
:
maxBy[B](f: (A) ? B)(implicit cmp: Ordering[B]): A
找到产生函数f测量的最大值的第一个元素.
Clojure有类似的东西吗?
最接近的似乎是max-key
:
(max-key k x)
(max-key k x y)
(max-key k x y & more)
返回
x
为此(k x)
,一个数字,是最大的.
该名称使其听起来只适用于地图,但k
可以是任何功能.
唯一缺少的是k
必须返回一个数字,而Scala可以处理任何Ordering
实例.