當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Scala StrictOptimizedLinearSeqOps.sortBy用法及代碼示例


sortBy 方法(或屬性)屬於 scala.collection.StrictOptimizedLinearSeqOps 特性(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 if ord.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)

繼承自:

collection.SeqOps.sortBy

源碼:

Seq.scala

相關用法


注:本文由純淨天空篩選整理自scala-lang.org大神的英文原創作品 StrictOptimizedLinearSeqOps.sortBy。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。