C#的foreach函数问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#的foreach函数问题相关的知识,希望对你有一定的参考价值。

哪位朋友能帮我详细的说明一下foreach函数。

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

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

谢谢各位了。

LZ 可能理解错了 foreach 是遍历 数组
它不关可以遍历数组还可以是集合等等
比如 你是int的数组
foreach(int [变量名] in 数组名)

[变量名](这个就是数组里具体的值了)

其实道理和 for循环是一样的 只是写法不一样
for(int i=0;i<10;i++)

数组名[i](也是数组里具体的值)

这里的数组名[i]和上面的[变量名] 是一样的
参考技术A 举个例子
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的位置
以此类推,学习的价值在自己想,加油吧
参考技术B foreach 是迭代器 当一个类实现了IEnumerable 和 IEnumerator 这两个接口就可以实现迭代这类的对象;

至于数组的反向复制 可以用ArrayList 数组来实现,先调用ArrayList对象的反向排列方法Reverse()然后调用Copy()或ToArray()方法拷贝到一个数组 就行了
参考技术C 反向复制用foreach貌似还不如循环来的快啊

以上是关于C#的foreach函数问题的主要内容,如果未能解决你的问题,请参考以下文章

在 foreach 循环 c# 中使用 savechanges()

C# 异步 Foreach

MVC foreach 循环唯一 ID C#

foreach使用方法

C# foreach 列表元素在列表中添加一个 AddField

C# ForEach 循环,带有异步任务和依赖的后异步任务