我要将以下List[List[Any]]
转换为List[List[String]]
。
val input:List[List[Any]] = List(List(1234), List(234, 678), List(8765, 90876, 1))
我正在寻找以下输出:
val output:List[List[String]] = List(List(1234), List(234, 678), List(8765, 90876, 1))
我尝试过以下操作:
val output:List[List[String]] = input.map(_.toString).toList
// or
val output:List[List[String]] = input.map(_.toString)
以上都没有给我所需的输出。
答案 0 :(得分:2)
因为您的列表是嵌套的,所以需要将其映射两次。
为什么以下不起作用?
val output:List[List[String]] = input.map(_.toString)
因为,_ placeholder
包含List[String]
类型的值,并且应用toString
方法将List
转换为String
,因此结果将为{{1}类型而不是List[String]
。
List[List[String]]
因此,您需要将输入映射两次。
scala> input.map(_.toString)
res2: List[String] = List(List(1234), List(234, 678), List(8765, 90876, 1))