假设我有一个给定的集合。在不以任何方式更改集合的情况下,我使用 foreach 循环遍历其内容两次。除了宇宙射线之外,是否绝对保证两个循环中的顺序是一致的?
或者,给定HashSet<string>
具有多个元素的 a,可能导致以下注释行的输出不相等:
{
var mySet = new HashSet<string>();
// Some code which populates the HashSet<string>
// Output1
printContents(mySet);
// Output2
printContents(mySet);
}
public void printContents(HashSet<string> set) {
foreach(var element in set) {
Console.WriteLine(element);
}
}
如果我能得到一个一般性的答案来解释导致实现不符合上述标准的原因,那将会很有帮助。不过,具体来说,我对Dictionary
,List
和数组很感兴趣。