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


Scala Option.unzip3用法及代碼示例


unzip3 方法(或屬性)屬於 scala.Option 類(class),其相關用法說明如下。

用法 一

final def unzip3[A1, A2, A3](implicit asTriple: A <:< (A1, A2, A3)): (Option[A1], Option[A2], Option[A3])

將三元組的一個選項轉換為三個選項,一個選項包含三元組每個位置的元素。

這相當於:

option match {
  case Some((x, y, z)) => (Some(x), Some(y), Some(z))
  case _               => (None,    None,    None)
}

類型參數:

A1

三元組中三個元素中第一個的類型

A2

三元組中三個元素中第二個的類型

A3

三元組中三個元素中第三個的類型

值參數:

asTriple

斷言此選項的元素類型是三元組的隱式轉換。

返回:

選項的三元組,分別包含此選項的元素三元組中的第一個、第二個和第三個元素。

源碼:

Option.scala

用法 二

def unzip3[A1, A2, A3](implicit asTriple: A => (A1, A2, A3)): (Iterable[A1], Iterable[A2], Iterable[A3])
option2Iterable 隱式添加

將此三元組的可迭代集合轉換為每個三元組的第一個、第二個和第三個元素的三個集合。

val xs = Iterable(
           (1, "one", '1'),
           (2, "two", '2'),
           (3, "three", '3')).unzip3
// xs == (Iterable(1, 2, 3),
//        Iterable(one, two, three),
//        Iterable(1, 2, 3))

類型參數:

A1

元素三元組的第一個成員的類型

A2

元素三元組的第二個成員的類型

A3

元素三元組的第三個成員的類型

值參數:

asTriple

一個隱式轉換,它斷言這個可迭代集合的元素類型是三元組。

返回:

可迭代集合的三元組,分別包含此可迭代集合的每個元素三元組的第一個、第二個和第三個成員。

繼承自:

collection.IterableOps.unzip3

源碼:

Iterable.scala

相關用法


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