什么是Clojure相当于Scala的maxBy函数?

Chr*_*tin 1 clojure

Scala TraversableOncemaxBy:

maxBy[B](f: (A) ? B)(implicit cmp: Ordering[B]): A

找到产生函数f测量的最大值的第一个元素.

Clojure有类似的东西吗?

Chr*_*tin 5

最接近的似乎是max-key:

(max-key k x) (max-key k x y) (max-key k x y & more)

返回x为此(k x),一个数字,是最大的.

该名称使其听起来只适用于地图,但k可以是任何功能.

唯一缺少的是k必须返回一个数字,而Scala可以处理任何Ordering实例.