【发布时间】:2021-02-08 09:03:57
【问题描述】:
+= 在这里做什么?这是否意味着附加到列表中? 如果 maxNodes = 16,以下行是否意味着值 0 到 15 存储在 NodeList 中?还是0到16?
var Nodelist = new ArrayBuffer[Int]()
for (i <- 0 until maxNodes) {
Nodelist += i
}
【问题讨论】:
-
你为什么在这里问?当您尝试时会发生什么?你有任何错误吗?你没有得到你期望的结果吗?你不了解你得到的结果吗?
-
@AlonsodelArte
ArrayBuffer是可变的。 -
Btw 不是 List 是 ArrayBuffer,两个非常不同的东西,你不应该混淆它们的名字。
-
@Ava 哎呀,这是我的失误,我的意思是写“可变”。
-
我昨天应该写的:“以这种方式使用像
ArrayBuffer这样的可变集合并不是非常惯用的Scala。写像var nodeList = 0 until maxNodes这样的东西会容易得多。见@987654321 @" 正如@Ava 指出的那样,我被几个额外的音节弄糊涂了。除此之外,我坚持我所写的。