私がのようなものを持っていてList[Option[A]]
、これをに変換したいList[A]
場合、標準的な方法は次を使用することflatMap
です:
scala> val l = List(Some("Hello"), None, Some("World"))
l: List[Option[java.lang.String]] = List(Some(Hello), None, Some(World))
scala> l.flatMap( o => o)
res0: List[java.lang.String] = List(Hello, World)
今o => o
は単なる恒等関数です。私は何かする方法があるだろうと思ったでしょう:
l.flatMap(Identity) //return a List[String]
ただし、を生成できないため、これを機能させることはできませんobject
。私は役に立たないいくつかのことを試みました。誰かがこのようなものを機能させることができますか?