groupMap 方法(或屬性)屬於 scala.collection.SeqOps 特性(trait),其相關用法說明如下。
用法:
def groupMap[K, B](key: A => K)(f: A => B): Map[K, CC[B]]根據鑒別函數key將此可迭代集合劃分為可迭代集合的映射.使用value 函數將組中的每個元素轉換為B 類型的值。
它等效於 groupBy(key).mapValues(_.map(f)) ,但效率更高。
case class User(name: String, age: Int)
def namesByAge(users: Seq[User]): Map[Int, Seq[String]] =
  users.groupMap(_.age)(_.name)注意:即使應用於視圖或惰性集合,它也會始終強製元素。
- 類型參數:
- B
- 轉換函數返回的值的類型 
- K
- 鑒別器函數返回的鍵的類型 
 
- 值參數:
- f
- 元素變換函數 
- key
- 判別器函數 
 
- 繼承自:
- collection.IterableOps.groupMap
- 源碼:
- Iterable.scala
相關用法
- Scala SeqOps.groupMapReduce用法及代碼示例
- Scala SeqOps.groupBy用法及代碼示例
- Scala SeqOps.lengthCompare用法及代碼示例
- Scala SeqOps.sizeIs用法及代碼示例
- Scala SeqOps.partitionMap用法及代碼示例
- Scala SeqOps.sliding用法及代碼示例
- Scala SeqOps.transpose用法及代碼示例
- Scala SeqOps.inits用法及代碼示例
- Scala SeqOps.mkString用法及代碼示例
- Scala SeqOps.unzip3用法及代碼示例
- Scala SeqOps.permutations用法及代碼示例
- Scala SeqOps.prepended用法及代碼示例
- Scala SeqOps.combinations用法及代碼示例
- Scala SeqOps.scanRight用法及代碼示例
- Scala SeqOps.unzip用法及代碼示例
- Scala SeqOps.collectFirst用法及代碼示例
- Scala SeqOps.lengthIs用法及代碼示例
- Scala SeqOps.addString用法及代碼示例
- Scala SeqOps.tails用法及代碼示例
- Scala SeqOps.sortWith用法及代碼示例
- Scala SeqOps.sortBy用法及代碼示例
- Scala SeqOps.appended用法及代碼示例
- Scala Seq.permutations用法及代碼示例
- Scala SeqView.inits用法及代碼示例
- Scala SeqMap.sizeCompare用法及代碼示例
注:本文由純淨天空篩選整理自scala-lang.org大神的英文原創作品 SeqOps.groupMap。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。
