object TestScala {
def main(args: Array[String]): Unit = {
val mainList = List(3, 2, 1)
mainList.patch(1, Seq(5), 0)
println("mainList-->"+mainList)
}
}
输出为mainList-->List(3, 2, 1)
,不是预期的
我期望3,5,2,1
答案 0 :(得分:3)
Scala列表是不可变的。 将其分配给变量,它将产生所需的输出。
object TestScala {
def main(args: Array[String]): Unit = {
var mainList = List(3, 2, 1)
mainList = mainList.patch(1, Seq(5), 0)
println("mainList-->"+mainList)
}
}
答案 1 :(得分:0)
Scala之类的功能语言更喜欢不可变的数据结构。
undefined_variable提供的答案是正确的,但您应该更喜欢val而不是var:
object TestScala {
def main(args: Array[String]): Unit = {
val mainList = List(3, 2, 1)
val newList = mainList.patch(1, Seq(5), 0)
println("newList-->"+newList)
}
}