2014-11-05 44 views
8

假設我有一個元組列表階元組字符串

('a', 1), ('b', 2)... 

一個怎樣獲取有關其轉換爲一個字符串格式

a 1 
b 2 

我嘗試使用collection.map(_.mkString('\t'))但是我越來越一個錯誤,因爲基本上我將操作應用到元組而不是列表。使用flatMap都於事無補

回答

20

對於Tuple2你可以使用:

val list = List(("1", 4), ("dfg", 67)) 
list.map { case (str, int) => s"$str $int"} 

對於任何一個元組試試這個代碼:

val list = List[Product](("dfsgd", 234), ("345345", 345, 456456)) 

list.map { tuple => 
    tuple.productIterator.mkString("\t") 
} 
+0

將這種需要增加一個'\ N'以後每隔照顧元組? – 2014-11-05 07:12:46

+4

不會。它將每個元組映射到字符串。如果你想在結果列表中使用'mkString'後面的'\ n'。 – 2014-11-05 07:14:08

+2

我不認爲'productIterator'後面的'toList'是必要的。 – 2014-11-05 10:09:07