在W3cSchool 学习C# 时的一些疑难记录
首先上代码片段
class MyArray
{
static void Main(string[] args)
{
int[] n = new int[10];
for(int i = 0; i < 10; i++) //最常见的for循环
{
n[i] = i + 100;
}
foreach(int j in n)//这里的J是index吗
{
int i = j-100;//这里的J值又是多少
Console.WriteLine("Element[{0}] = {1}", i, j);
i++;
}
Console.ReadKey();
}
在该学习网站上,对于这段代码以及foreach的用法,并没有详细的说明。
初学者会认为这里的int j 是index, 因为我们在写二维、多维数组时, 经常会用i, j 作为index. 但在这里显然不是。首先第一个for循环是必需的,这样n[i]数组才能填充进实际的元素值。 离开for循环后,数组n填满,但本地变量i回到初始值。 那么进入foreach后,int j 便可以从数组n中一一取出元素,int i 重新赋值,目的为了WriteLine显示最后结果。
当然也可以在一开始对数组进行直接初始化,省去for循环。
C'est noté!