如何从Scala的Collection中的索引中获得一个Option?

有没有一种方法,只使用Scala的收集API,试图通过其索引得到一个元素时获得一个列表中的选项?

我正在寻找这个function的等价物,它存在吗?

def optionalValue[T](l: List[T], index: Int) = { if (l.size < (index+1)) None else Some(l(index)) } 

谢谢

是的,你可以将你的集合提升到一个函数Int => Option[A]

 scala> List(1,2,3).lift res0: Int => Option[Int] = <function1> scala> List(1,2,3).lift(9) res1: Option[Int] = None