foreach中使用的集合是不可变的。这很大程度上是设计使然。
就像在MSDN上所说的:
foreach语句用于遍历集合以获取所需的信息,但不能用于在源集合中添加或删除项目,以避免不可预期的副作用。
如果需要在源集合中添加或删除项目,请使用for循环。
Poko提供的链接中的帖子表明新的并发集合中允许这样做。

foreach中使用的集合是不可变的。这很大程度上是设计使然。
就像在MSDN上所说的:
foreach语句用于遍历集合以获取所需的信息,但不能用于在源集合中添加或删除项目,以避免不可预期的副作用。
如果需要在源集合中添加或删除项目,请使用for循环。
Poko提供的链接中的帖子表明新的并发集合中允许这样做。