groupMap
方法(或屬性)屬於sys.SystemProperties類(class),其相關用法說明如下。
用法:
def groupMap[K, B](key: ((String, String)) => K)(f: ((String, String)) => B): Map[K, Iterable[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 SystemProperties.groupMapReduce用法及代碼示例
- Scala SystemProperties.groupBy用法及代碼示例
- Scala SystemProperties.addString用法及代碼示例
- Scala SystemProperties.tails用法及代碼示例
- Scala SystemProperties.transpose用法及代碼示例
- Scala SystemProperties.equals用法及代碼示例
- Scala SystemProperties.unzip3用法及代碼示例
- Scala SystemProperties.elementWise用法及代碼示例
- Scala SystemProperties.lazyZip用法及代碼示例
- Scala SystemProperties.runWith用法及代碼示例
- Scala SystemProperties.scanRight用法及代碼示例
- Scala SystemProperties.collectFirst用法及代碼示例
- Scala SystemProperties.unzip用法及代碼示例
- Scala SystemProperties.sizeIs用法及代碼示例
- Scala SystemProperties.sizeCompare用法及代碼示例
- Scala SystemProperties.inits用法及代碼示例
- Scala SystemProperties.partitionMap用法及代碼示例
- Scala SystemProperties.mkString用法及代碼示例
- Scala SystemProperties.sliding用法及代碼示例
- Scala Symbol.on用法及代碼示例
- Scala Symbol.orElseBy用法及代碼示例
- Scala SymbolOrdering.orElseBy用法及代碼示例
- Scala SymbolOrdering.on用法及代碼示例
- Scala SymbolModule.spliceOwner用法及代碼示例
- Scala SymbolOrdering.orElse用法及代碼示例
注:本文由純淨天空篩選整理自scala-lang.org大神的英文原創作品 SystemProperties.groupMap。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。