gpt4 book ai didi

c# - 遍历字典并为每个字典值添加一个值

转载 作者:行者123 更新时间:2023-11-30 21:49:18 43 4
gpt4 key购买 nike

我想为字典中的每个值加 1。

产生“InvalidOperationException:不同步”

    public Dictionary<int,int> dict = new Dictionary<int,int>();
dict.Add (23, 34);

foreach (KeyValuePair<int,int> kvp in dict) {
dict [kvp.Key] += 1;
}

完整的错误信息如下:

System.Collections.Generic.Dictionary`2+Enumerator[System.Int32,System.Int32].VerifyState () (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Collections.Generic/Dictionary.cs:912)
System.Collections.Generic.Dictionary`2+Enumerator[System.Int32,System.Int32].MoveNext () (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Collections.Generic/Dictionary.cs:835)

这种尝试给出了类似的结果:

foreach (int x in dict.Keys) {
kek [x] += 1;
}

最佳答案

尝试:

foreach (int x in dict.Keys.ToList()) {
dict[x] += 1;
}

因为字典在对它的更改时失效(因此它的内部迭代器也是如此)。

关于c# - 遍历字典并为每个字典值添加一个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37069304/

43 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com