[英]How to convert a List of List to a List in Scala?
我有一個列表列表,如下所示:
val xl = (0 until 5).map(i => {Seq(s"$i", s"Mr._$i")}).toList
我想將其轉換為字符串列表或Seq:
List("0", "Mr._0","1", "Mr._1","2", "Mr._2","3", "Mr._3","4", "Mr._4")
我是Scala的新手,無法在Scala中找到任何可幫助我將列表列表轉換為列表的函數。
只需使用flatMap而不是map:
val xl = (0 until 5).flatMap(i => Seq(s"$i", s"Mr._$i"))
要么
val xl = (0 until 5).map(i => Seq(s"$i", s"Mr._$i")).flatten
如果有一個涉及for-comprehension
的flatMap
那就總是一個優雅的方法:
for{
i <- 0 until 5
r <- Seq(s"$i", s"Mr._$i")
} yield r
這對我有用:
val xl = (0 until 5).map(i => List(s"$i", s"Mr._$i")).toList
println(xl.flatten)
輸出:清單(0,Mr._0,1,Mr._1,2,Mr._2,3,Mr._3,4,Mr._4)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.