orElseBy
方法(或属性)属于 scala.math.Ordering.OptionOrdering
特性(trait),其相关用法说明如下。
用法:
def orElseBy[S](f: Option[T] => S)(implicit ord: Ordering[S]): Ordering[Option[T]]
给定 f,一个从 T 到 S 的函数,创建一个 Ordering[T],它的比较函数返回此 Ordering 的比较函数的结果,如果它不为零,或者结果等价于:
Ordering[S].compare(f(x), f(y))
此函数相当于将 Ordering.by(f)
的结果传递给 orElse
。
例子:
case class Pair(a: Int, b: Int) val pairOrdering = Ordering.by[Pair, Int](_.a) .orElseBy[Int](_.b)
继承自:
- math.Ordering.orElseBy
源码:
- Ordering.scala
相关用法
- Scala OptionOrdering.orElse用法及代码示例
- Scala OptionOrdering.on用法及代码示例
- Scala Option.mkString用法及代码示例
- Scala Option.filterNot用法及代码示例
- Scala Option.filter用法及代码示例
- Scala Option.groupBy用法及代码示例
- Scala Option.foreach用法及代码示例
- Scala Option.unzip用法及代码示例
- Scala Option.sliding用法及代码示例
- Scala Option.sizeIs用法及代码示例
- Scala Option.zip用法及代码示例
- Scala Option.groupMapReduce用法及代码示例
- Scala Option.lazyZip用法及代码示例
- Scala Option.transpose用法及代码示例
- Scala Option.scanRight用法及代码示例
- Scala Option.orNull用法及代码示例
- Scala Option.contains用法及代码示例
- Scala Option.toLeft用法及代码示例
- Scala Option.toList用法及代码示例
- Scala Option.isEmpty用法及代码示例
- Scala Option.collect用法及代码示例
- Scala Option.inits用法及代码示例
- Scala Option.forall用法及代码示例
- Scala Option.exists用法及代码示例
- Scala Option.addString用法及代码示例
注:本文由纯净天空筛选整理自scala-lang.org大神的英文原创作品 OptionOrdering.orElseBy。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。