我找不到我的错误在哪里
本文关键字:在哪里 错误 我的 找不到 | 更新日期: 2023-09-27 18:15:23
我得到两个错误"不能分配给'C',因为它是一个'foreach迭代变量"answers"语法错误,值预期"我真的不知道我的错误在哪里?我可以找些新鲜的眼睛来证明我的不足。
int[] numDictionary = new int[] { 5, 5, 5, 7, 7, 7, 9, 7, 9, 9, 9, 1 };
IDictionary<int, int> count = new SortedDictionary<int, int>();
//count = new SortedDictionary<int, int>();
//int SortedDictionary = count;
foreach (var c in numDictionary)
{
if (c > 0)
{
count[c] = count.[c] + 1;
}
}
//return count.ToString();
Console.WriteLine(count);
Console.ReadKey();
在foreach
循环中,您不能通过索引访问集合的内容。您可以使用您定义的迭代变量(在本例中为var c
)直接寻址集合项。
Console.WriteLine("Contents of numDictionary: ");
foreach (var c in numDictionary)
{
Console.Write(c);
}
然而,迭代变量不能被修改——只能被读取。如果你想遍历数组并修改内容,可以使用for
循环。
int[] numDictionary = new int[] { 5, 5, 5, 7, 7, 7, 9, 7, 9, 9, 9, 1 };
for (int i = 0; i < numDictionary.Length; ++i)
{
numDictionary[i] = numDictionary[i] + 1;
}
您可以在这篇Microsoft开发网络文章中找到关于foreach
语句以及它与for
语句的关系的更多信息。