在 C# 中,foreach
循环用于遍历集合中的每个元素,但它不允许在循环内部修改集合。因此,在 foreach
循环中直接添加一个字典 (Key, Value) 是不允许的。
如果您需要在遍历字典时添加新的键值对,可以使用 for
循环或者 foreach
循环遍历字典的键,并在循环外部添加新的键值对。例如:
Dictionary<string, int> dictionary = new Dictionary<string, int>();
// 添加初始数据
dictionary.Add("apple", 1);
dictionary.Add("banana", 2);
// 遍历字典的键
foreach (string key in dictionary.Keys)
{
// 在循环外部添加新的键值对
if (key == "apple")
{
dictionary.Add("orange", 3);
}
}
或者使用 for
循环遍历字典的键:
Dictionary<string, int> dictionary = new Dictionary<string, int>();
// 添加初始数据
dictionary.Add("apple", 1);
dictionary.Add("banana", 2);
// 遍历字典的键
for (int i = 0; i< dictionary.Count; i++)
{
string key = dictionary.Keys.ElementAt(i);
// 在循环内部添加新的键值对
if (key == "apple")
{
dictionary.Add("orange", 3);
}
}
需要注意的是,在遍历字典时,如果添加新的键值对会导致键的数量发生变化,可能会导致循环出现异常。因此,在遍历字典时添加新的键值对需要谨慎处理。
领取专属 10元无门槛券
手把手带您无忧上云