Zaczynam odkrywać Scalę i jedną z rzeczy, które mnie intrygują jest typ Option
i obietnica możliwości usunięcia błędów związanych z null
.Jak przekształcić kolekcję Scala opcji [X] na kolekcję X
Jednak nie byłem w stanie wymyślić, jak przekształcić listę (lub inną kolekcję) z, powiedzmy, Option[String]
, w kolekcję String
(oczywiście odfiltrowując wszelkie wartości, które są None
).
Innymi słowy, jak mogę z tego:
List[Option[Int]] = List(Some(1))
... do tego:
List[Int] = List(1)
Używam Scala 2.8, czy to ma jakiś wpływ na odpowiedź.
Żenująco proste (jak miałem nadzieję, że będzie)! Dzięki. – npad
Warto jednak zauważyć, że działa tylko dlatego, że istnieje niejawna zamiana z Opcja [A] na GenTraversableOnce [A] – kosii
@kosii Wygląda (przynajmniej w Scali 2.11.6) konwersja z opcji [A] do Iterable [A] –