gpt4 book ai didi

scala - 如何在scala中声明空列表然后添加字符串?

转载 作者:行者123 更新时间:2023-12-03 05:18:20 26 4
gpt4 key购买 nike

我有这样的代码:

val dm  = List[String]()
val dk = List[Map[String,Object]]()

.....

dm.add("text")
dk.add(Map("1" -> "ok"))

但它抛出运行时 java.lang.UnsupportedOperationException。

我需要声明空列表或空 map ,并且稍后在代码中需要填充它们。

最佳答案

Scala 列表默认是不可变的。您无法“添加”元素,但可以通过在前面附加新元素来形成新列表。由于它是一个列表,因此您需要重新分配引用(因此您不能使用 val)。

var dm  = List[String]()
var dk = List[Map[String,AnyRef]]()

.....

dm = "text" :: dm
dk = Map(1 -> "ok") :: dk

运算符:: 创建新列表。您还可以使用更短的语法:

dm ::= "text" 
dk ::= Map(1 -> "ok")

注意: 在 scala 中不要使用 Object 类型,而是使用 AnyAnyRef AnyVal.

关于scala - 如何在scala中声明空列表然后添加字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6557169/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com