如何替换不可变数组scala中的值

How to replace a value in immutable arrays scala

我有一个数组

val doot = Array("a", "b", "c")

我想用字母 "z" 替换第二个索引,但我不想修改点。我想创建一个新数组,因为这似乎是 scala 中的惯用语。

到目前为止,我只能用update

修改数组
doot.update(1, "z") // But now doot is modified directly, not ideal!

scala 是否提供了执行此操作的方法?

scala> val doot = Array("a", "b", "c")
doot: Array[String] = Array(a, b, c)

scala> val eoot = doot.updated(1, "z")
eoot: Array[String] = Array(a, z, c)

scala> doot
res0: Array[String] = Array(a, b, c)

scala> eoot
res1: Array[String] = Array(a, z, c)