当我尝试以下代码时,我正在使用 scala 2.9.1:
import scala.collection.mutable
val a = mutable.Set(1,2,3,4,7,0,98,9,8)
a.foreach(x => { println(x); a.remove(x) })
结果是这样的
0
98
2
1
4
3
8
其中没有列出 a 的所有元素。此后, a 变为 Set(9, 7) 而不是空集。对我来说这看起来很奇怪,这是一个错误还是我们在执行 foreach 时无法修改集合本身?