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


Scala LazyList.partitionMap用法及代碼示例

partitionMap 方法(或屬性)屬於collection.immutable.LazyList類(class),其相關用法說明如下。

用法:

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

將函數 f 應用於惰性列表的每個元素並返回一對惰性列表:第一個由 f 返回的值組成,這些值被包在 scala.util.Left 中,第二個由包在scala.util.Right.

例子:

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

這種方法保留了懶惰;元素僅根據需要單獨評估。

定義類

源碼:

LazyList.scala

相關用法


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