首页 >后端开发 >C++ >如何在 C# foreach 循环中访问当前迭代索引?

如何在 C# foreach 循环中访问当前迭代索引?

Barbara Streisand
Barbara Streisand原创
2025-01-27 18:01:10528浏览

How Can I Access the Current Iteration Index in a C# foreach Loop?

检索c#foreach循环中的迭代索引 c#'s

循环本质上不提供对迭代索引的访问。 但是,我们可以巧妙地使用Linq的

方法来实现这一目标。 foreach>使用Select的过载,它接受了带有值和索引参数的lambda表达式的过载,这是非常有效的:

lambda expressionSelect创建一个包含项目(

)及其索引(
<code class="language-csharp">foreach (var item in Model.Select((value, i) => new { i, value }))
{
    var value = item.value;
    var index = item.i;
}</code>
)的匿名对象。

> (value, i) => new { i, value }>以提高性能并避免不必要的堆(尤其是大型收藏品),请考虑使用value(从C#7.0开始) i

甚至更简单,并利用C#的破坏功能,我们可以直接访问值和索引:>

ValueTuple这些方法有效地允许您在使用

循环时获得当前迭代索引,从而在代码中提供更大的控制和灵活性。>

以上是如何在 C# foreach 循环中访问当前迭代索引?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn