sortBy
方法(或屬性)屬於 scala.collection.SeqOps
特性(trait),其相關用法說明如下。
用法:
def sortBy[B](f: A => B)(implicit ord: Ordering[B]): C
根據使用轉換函數轉換隱式給定 Ordering 產生的 Ordering 對該序列進行排序。
注意:對於無限大小的集合不會終止。
注意:即使應用於視圖或惰性集合,它也會始終強製元素。
排序是穩定的。也就是說,相等的元素(由 ord.compare
確定)在排序序列中以與原始元素相同的順序出現。
類型參數:
- B
轉換
f
的目標類型,以及定義排序ord
的類型.
值參數:
- f
轉換函數將元素映射到其他域
B
.- ord
域
B
上假定的排序.
返回:
由該序列的元素組成的序列,按照順序排序 where
x < y
iford.lt(f(x), f(y))
.也可以看看:
例子:
val words = "The quick brown fox jumped over the lazy dog".split(' ') // this works because scala.Ordering will implicitly provide an Ordering[Tuple2[Int, Char]] words.sortBy(x => (x.length, x.head)) res0: Array[String] = Array(The, dog, fox, the, lazy, over, brown, quick, jumped)
源碼:
- Seq.scala
相關用法
- Scala SeqOps.sortWith用法及代碼示例
- Scala SeqOps.sizeIs用法及代碼示例
- Scala SeqOps.sliding用法及代碼示例
- Scala SeqOps.scanRight用法及代碼示例
- Scala SeqOps.lengthCompare用法及代碼示例
- Scala SeqOps.groupMap用法及代碼示例
- Scala SeqOps.partitionMap用法及代碼示例
- Scala SeqOps.transpose用法及代碼示例
- Scala SeqOps.groupMapReduce用法及代碼示例
- Scala SeqOps.inits用法及代碼示例
- Scala SeqOps.mkString用法及代碼示例
- Scala SeqOps.unzip3用法及代碼示例
- Scala SeqOps.permutations用法及代碼示例
- Scala SeqOps.prepended用法及代碼示例
- Scala SeqOps.combinations用法及代碼示例
- Scala SeqOps.unzip用法及代碼示例
- Scala SeqOps.groupBy用法及代碼示例
- Scala SeqOps.collectFirst用法及代碼示例
- Scala SeqOps.lengthIs用法及代碼示例
- Scala SeqOps.addString用法及代碼示例
- Scala SeqOps.tails用法及代碼示例
- Scala SeqOps.appended用法及代碼示例
- Scala Seq.permutations用法及代碼示例
- Scala SeqView.inits用法及代碼示例
- Scala SeqMap.sizeCompare用法及代碼示例
注:本文由純淨天空篩選整理自scala-lang.org大神的英文原創作品 SeqOps.sortBy。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。