groupMap
方法(或属性)属于 scala.collection.AbstractIndexedSeqView
类(class),其相关用法说明如下。
用法:
def groupMap[K, B](key: A => K)(f: A => B): Map[K, View[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 AbstractIndexedSeqView.groupMapReduce用法及代码示例
- Scala AbstractIndexedSeqView.groupBy用法及代码示例
- Scala AbstractIndexedSeqView.collectFirst用法及代码示例
- Scala AbstractIndexedSeqView.partitionMap用法及代码示例
- Scala AbstractIndexedSeqView.sliding用法及代码示例
- Scala AbstractIndexedSeqView.addString用法及代码示例
- Scala AbstractIndexedSeqView.unzip用法及代码示例
- Scala AbstractIndexedSeqView.tails用法及代码示例
- Scala AbstractIndexedSeqView.transpose用法及代码示例
- Scala AbstractIndexedSeqView.mkString用法及代码示例
- Scala AbstractIndexedSeqView.sortBy用法及代码示例
- Scala AbstractIndexedSeqView.sizeIs用法及代码示例
- Scala AbstractIndexedSeqView.lengthIs用法及代码示例
- Scala AbstractIndexedSeqView.combinations用法及代码示例
- Scala AbstractIndexedSeqView.inits用法及代码示例
- Scala AbstractIndexedSeqView.lazyZip用法及代码示例
- Scala AbstractIndexedSeqView.unzip3用法及代码示例
- Scala AbstractIndexedSeqView.sortWith用法及代码示例
- Scala AbstractIndexedSeqView.permutations用法及代码示例
- Scala AbstractIndexedSeqView.scanRight用法及代码示例
- Scala AbstractIterator.sliding用法及代码示例
- Scala AbstractIterable.partitionMap用法及代码示例
- Scala AbstractIterable.inits用法及代码示例
- Scala AbstractIterable.groupMap用法及代码示例
- Scala AbstractIterable.sizeIs用法及代码示例
注:本文由纯净天空筛选整理自scala-lang.org大神的英文原创作品 AbstractIndexedSeqView.groupMap。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。