fra*_*cca 0 collections scala option
有没有更好/更短/更简洁的方式来写这个?
def elementOrNone[T](values: List[T], index: Int): Option[T] =
values match {
case Nil => None
case _ => Some(values(index))
}
Run Code Online (Sandbox Code Playgroud)
是
val xs = List(1,2,3)
scala> xs.lift(1)
//res2: Option[Int] = Some(2)
scala> xs.lift(10)
//res3: Option[Int] = None
scala> val ys = List.empty[Int]
// ys: List[Int] = List()
scala> ys.lift(0)
// res1: Option[Int] = None
Run Code Online (Sandbox Code Playgroud)
(但与你的代码不同,如果你要求索引大于集合大小的元素,请不要抛出java.lang.IndexOutOfBoundsException - 我不知道它对你有好处还是坏处).
| 归档时间: |
|
| 查看次数: |
69 次 |
| 最近记录: |