2014-11-05 45 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