2016-11-16 4 views
0

私のようなケースクラスを持っている:今、そうでない場合は、一部

case class Parts(part1: Option[Part1], part2: Option[Part2], part3: Option[Part3]) 

case class Part1(id: Int) 
case class Part2(id: Int) 
case class Part3(id: Int) 

上記は、すべての部品クラス以下に含まれています現在私のコードで私は持っている:

case (maybePart1, maybePart2, maybePart3) => 
    Parts(maybePart1, maybePart2, maybePart3) 

しかし、私が本当にやりたいことは、すべてが無ければ返すことです。上記を行っています。

どうすればいいですか?

答えて

6

彼らはすべてNoneであれば念のため別のcase文を追加します。

case (None, None, None) => None 
case (maybePart1, maybePart2, maybePart3) => 
    Some(Parts(maybePart1, maybePart2, maybePart3)) 
関連する問題