当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Scala Stream.partitionMap用法及代码示例


partitionMap 方法(或属性)属于 scala.collection.immutable.Stream 类(class),其相关用法说明如下。

用法:

def partitionMap[A1, A2](f: A => Either[A1, A2]): (Stream[A1], Stream[A2])

将函数 f 应用于可迭代集合的每个元素并返回一对可迭代集合:第一个由 f 返回的值组成,这些值被包在 scala.util.Left 中,第二个由被包的值组成scala.util.Right.

例子:

val xs = Iterable(1, "one", 2, "two", 3, "three") partitionMap {
 case i: Int => Left(i)
 case s: String => Right(s)
}
// xs == (Iterable(1, 2, 3),
//        Iterable(one, two, three))

类型参数:

A1

第一个结果集合的元素类型

A2

第二个结果集合的元素类型

值参数:

f

'split function' 将此可迭代集合的元素映射到 scala.util.Either

返回:

一对可迭代集合:第一个由 f 返回的值组成,这些值被包在 scala.util.Left 中,第二个由被包在 scala.util.Right 中的值组成.

继承自:

collection.IterableOps.partitionMap

源码:

Iterable.scala

相关用法


注:本文由纯净天空筛选整理自scala-lang.org大神的英文原创作品 Stream.partitionMap。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。