.NET 2
标准:
foreach(KeyValuePair<int,int> entry in MyDic) { entry.Value += i; // does not work :( i++; }
建议?
环过 Keys 改为属性。当使用枚举器时,对基础集合的任何修改都会使枚举器在下次调用时失效。 MoveNext .
Keys
MoveNext
你可以列举 钥匙 或 AllKeys (这只是一个字符串数组)并修改它们指向的值。
钥匙
AllKeys
此外,还有 KeyValuePair<K, V> 它们本身是只读的,所以,不管迭代器是否是块,在任何情况下,都不能在不滥用反射的情况下修改这些值。
KeyValuePair<K, V>