foreach和for循环类似的,使用foreach的好处是,当遍历数组时,因为有些语言的起始位置是从0开始的,而有些语言的起始位置却使从1开始,当语言支持foreach语法时,使用了foreach,它就自动帮你从数组第一位开始遍历,而不用你管第一位的下标是0还是1。而使用for来遍历的话,你还要确定该语言对数组的定义是下标1开始还是下标0开始。
int[] fibarray = new int[] { 0, 1, 2, 3, 5, 8, 13 };
foreach (int i in fibarray)
{
System.Console.WriteLine(i);
}
for(int i=0; i
System.Console.WriteLine(fibarray[i]);
}
这是两种用法 达到的效果一样的 个人认为foreach 在底层还是封装了for功能的
不一样,for的条件参数是递增或递减设置规律的
foreach的条件是从别的数组拿来的
两个空分别为:IEnumerator,GetEnumerator()
在使用Foreach遍历的时候它其实是转换为While,MoveNext()的形式的,所以你这个遍历对象必须是一个可枚举的类型,具有MoveNext()方法。