2017-09-12 17 views
0

List[List[Any]]私はList[List[String]]に変換します。List [Any]をScalaのリスト[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) 

どれも私に所望の出力を与えません。

+3

'input.map(_。map(_。toString))' – jwvh

+0

これはうまくいった。ありがとうございました。 –

答えて

2

リストがネストされているため、2回マッピングする必要があります。

なぜ以下の機能が動作しないのですか?

val output:List[List[String]] = input.map(_.toString) 
_ placeholder

タイプList[String]toString方法を適用した値を保持する、ためStringListを変換し、したがって結果がタイプList[String]代わりにList[List[String]]であろう。

scala> input.map(_.toString) 
res2: List[String] = List(List(1234), List(234, 678), List(8765, 90876, 1)) 

したがって、入力を2回マッピングする必要があります。

scala> input.map(_.map(_.toString)) 
res0: List[List[String]] = List(List(1234), List(234, 678), List(8765, 90876, 1)) 
+0

入手しました。どうもありがとうございます。 –

関連する問題