Scala相当于JavaScript数组传播

时间:2017-08-26 07:56:05

标签: java scala

在JavaScript中有一个很好的spread operator

来自MDN的示例:

var parts = ['shoulders', 'knees']; 
var lyrics = ['head', ...parts, 'and', 'toes']; 
// ["head", "shoulders", "knees", "and", "toes"]

Scala中是否存在等效内容?

4 个答案:

答案 0 :(得分:4)

怎么样

val lyrics = Seq("head") ++ parts ++ Seq("and", "toes")

答案 1 :(得分:1)

总是patch()。它的论点有点神秘,因为它有更广泛,更广泛的应用领域。

val parts = List("shoulders", "knees")
val lyrics = List("head", "and", "toes")

lyrics.patch(1, parts, 0)  // res0: List(head, shoulders, knees, and, toes)

答案 2 :(得分:0)

这可能有效:

val parts = List("shoulders", "knees")
val lyrics = "head" :: parts.::("and").::("knees")

但是,这仅适用于List类型

答案 3 :(得分:0)

我认为没有相应的东西。

你可以这样做。

val parts = Seq("shoulders", "knees"); 
val lyrics = "head" +: parts :+ "and" :+ "toes"
println(lyrics) // List(head, shoulders, knees, and, toes)