Scala 如何将列表值组合成字符串

Scala 如何将列表值组合成字符串,scala,Scala,我有这样一个案例类: case class MyClass(name: String, values: Seq[String]) scala> l res19: List[MyClass] = List(MyClass(firstvar,List(one,two,three)), MyClass(secondvar,List(23423, 234234))) "firstvar_one-two-three_secondvar_23423-234234" 如果我制作一个如下的字符串列表

我有这样一个案例类:

case class MyClass(name: String, values: Seq[String])
scala> l
res19: List[MyClass] = List(MyClass(firstvar,List(one,two,three)), MyClass(secondvar,List(23423, 234234)))
"firstvar_one-two-three_secondvar_23423-234234"
如果我制作一个如下的字符串列表:

case class MyClass(name: String, values: Seq[String])
scala> l
res19: List[MyClass] = List(MyClass(firstvar,List(one,two,three)), MyClass(secondvar,List(23423, 234234)))
"firstvar_one-two-three_secondvar_23423-234234"
如何将上述内容转换为如下字符串:

case class MyClass(name: String, values: Seq[String])
scala> l
res19: List[MyClass] = List(MyClass(firstvar,List(one,two,three)), MyClass(secondvar,List(23423, 234234)))
"firstvar_one-two-three_secondvar_23423-234234"

您可以选择折叠的累加器模式

//输出-

或者只使用.map和.mkString

map和mkString的组合可以实现以下功能:

l.map(mc => mc.name + "_" + mc.values.mkString("-")).mkString("_")

你试过什么看看