-3
私は3つのクラスがあります。
case class Foo(id: String, bars: Option[List[Bar]])
case class Bar(id: String, buzzes: Option[List[Buz]])
case class Buz(id: String, name: String)
そしてコレクション:
val col = Option[List[Foo]]
私が取得する必要があります:
val search: String = "find me"
val (x: Option[Foo], y: Option[Bar], z: Option[Buz]) = where buz.name == search ???
ヘルプを
UPD :)をしてください。 私は、JSON
{
"foos": [{
"id": "...",
"bars": [{
"id": "...",
"buzzes": [{
"id": "...",
"name": "find me"
}]
}]
}]
}
を持っており、現在のコンテキスト内の名前は一意になります。
私の最初の考えだった - このように - タプルのリストにコレクションを変換する:検索
==名前でつぶやくことで
{
(foo)(bar)(buz),
(foo)(bar)(buz),
(foo)(bar)(buz)
}
とフィルタしかし、私は:)する方法を知っている `tを
複数の 'Buz'要素にターゲットの' name'値がある場合はどうなりますか?タプルメンバーのそれぞれに 'オプション'を付ける理由は? 'Option [(Foo、Bar、Buz)]'を持つほうが意味がないでしょうか?タプルのメンバーは、Noneでないものもあります。 – jwvh
にいくつかの説明が追加されました – HoTicE