72

インデックスで要素を取得しようとするときに、Scala コレクション API のみを使用してリスト内のオプションを取得する方法はありますか?

この関数に相当するものを探していますが、存在しますか?

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

ありがとう

4

1 に答える 1

155

はい、コレクションを関数に持ち上げることができます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
于 2013-04-26T07:51:44.150 に答える