您不需要创建集合,使用 int
变量为0,并将其增加 foreach
. 。然后,您有索引和元素。
int index = 0;
foreach(var x in result)
{
// x is the element and index the current index
Console.WriteLine("Val:{0} Index:{1}", x.val, index);
index ++;
}
题
我使用的语言是C#。
假设我们有一个ienumerable,这是LINQ查询的结果。 T是匿名类型。如果我们想访问此类型的元素,最好的方法是什么?
我认为有两种方法。
1)将iEnumerable转换为列表,然后访问元素。
List<T> list = result.ToList();
for(int rowIndex=0; rowIndex<list.Count; rowIndex++)
{
double x = list[rowIndex].val;
}
2)
for(int rowIndex=0; rowIndex<result.Count(); rowIndex++)
{
double x = result.ElementAt(rowIndex).val;
}
我之所以想到上述内容的原因是,除了访问Ienumerable的元素之外,我还需要它们的索引。换句话说,如果元素是第一个,则第二等。
在此先感谢您的任何帮助!
解决方案
您不需要创建集合,使用 int
变量为0,并将其增加 foreach
. 。然后,您有索引和元素。
int index = 0;
foreach(var x in result)
{
// x is the element and index the current index
Console.WriteLine("Val:{0} Index:{1}", x.val, index);
index ++;
}