phi*_*eas 0 collections scala immutability
我有清单说-
List("aa","1","bb","2","cc","3","dd","4")
如何列出具有偶数和奇数位置的元组:
(aa,1),(bb,2),(cc,3),(dd,4)
希望它会有所帮助。
val list = List("aa","1","bb","2","cc","3","dd","4")
val tuple =
list.grouped(2).map { e =>
(e.head,e.last)
}.toList
Run Code Online (Sandbox Code Playgroud)
我们应该考虑奇怪大小的列表的情况,例如List("aa","1","bb","2","cc","3","dd"):
List((aa,1), (bb,2), (cc,3), (dd,dd))吗?List((aa,1), (bb,2), (cc,3))吗?Option?以下是返回Option[List(String, String)]指示错误情况的示例:
def maybeGrouped(list: List[String]): Option[List[(String, String)]] =
Try(
list
.sliding(2, 2)
.map { case List(a,b) => (a, b) }
.toList
).toOption
Run Code Online (Sandbox Code Playgroud)