C#的foreach函数问题

来源:百度知道 编辑:UC知道 时间:2024/06/01 17:19:07
哪位朋友能帮我详细的说明一下foreach函数。

目前只知道他是复制数组的工具。 其他就一无所知了。

还有,想问一下能不能用foreach实现反向复制。
也就是 数组里的数据 1,2,3 复制到另一个数组时变成3,2,1.

谢谢各位了。

LZ 可能理解错了 foreach 是遍历 数组
它不关可以遍历数组还可以是集合等等
比如 你是int的数组
foreach(int [变量名] in 数组名)
{
[变量名](这个就是数组里具体的值了)
}
其实道理和 for循环是一样的 只是写法不一样
for(int i=0;i<10;i++)
{
数组名[i](也是数组里具体的值)
}
这里的数组名[i]和上面的[变量名] 是一样的

举个例子
num是一个int数组
foreach(int i in num)
{...}
foreach是一个类似for的循环具体到这句的意思是说 "循环遍历"num中所有元素
每次循环从num中提出一个元素作为i进入循环体内
一直循环,直到遍历结束num中所有的元素为止
foreach好像没有能反向读取数组吧
但是你说的123变321肯定是可以的,我给你个思路,你自己去想
数组A里面是1,2,3
数组B里面是空的
foreach数组A
把1存入数组B
存2的时候把数组B的0下标的值传给下标1的位置,然后再让2存入下标0的位置
以此类推,学习的价值在自己想,加油吧

foreach 是迭代器 当一个类实现了IEnumerable 和 IEnumerator 这两个接口就可以实现迭代这类的对象;

至于数组的反向复制 可以用ArrayList 数组来实现,先调用ArrayList对象的反向排列方法Reverse()然后调用Copy()或ToArray()方法拷贝到一个数组 就行了

反向复制用foreach貌似还不如循环来的快啊