日期:2014-05-17  浏览次数:20680 次

foreach中怎么查看当前遍历到第几个
for(int i=0; i<list.count; i++)
{
   ......
   User user = list[i];
   ......
}

在这个循环中,如果很费时间,在调试的时候,可以随时在循环中的某句话中添加一个断点,然后程序就会停在这里,通过看i的值可以看出到第几个了。

foreach(User user in list)
{
 .......
}

如果用foureach的话,怎么知道运行到第几个了呢,当然可以自己加一个count来计数,但vs自带吗?
------解决方案--------------------
foreach 就是相当于 while{}循环。因为foreach功能就是调用 Enumator() 方法,不关心计数。


------解决方案--------------------
foreach(var item in list.Select((x, i) => new { x, i }))
{
    User user = item.x;
    int Idx = item.i;
}