使用foreach同时迭代多个列表(语法糖)

29 浏览
0 Comments

使用foreach同时迭代多个列表(语法糖)

你好,有没有一种方法可以像这样做:

for (int i = 0; i < Math.Min(a.Count, b.Count); i++)
{
    // 做一些事情
    //a[i]
    //b[i]
}

用foreach来实现吗?因为这样写会很好:

foreach(var item1 in list1 和 var item2 in list2 /* ....*/)
{
   item1.use(item2);
}

编辑

抱歉,对于有些人来说,我没有表达清楚,所以我现在希望能更好地解释一下

List listA = fillListA();
List listB = fillListB();
//这里可能有无限多个不同T类型的列表

现在我想执行某种形式的ForEach,因为我不想用for循环来做

它应该简单明了,就像这样:

foreach(var item1 in list1 和 var item2 in list2 /* 和 ...*/)
{
    item1.use(item2);
}

据我所知,我不能修改这样一个关键字类的东西

所以我想,好吧,像Parallel.ForEach一样构建迭代器ForEach(IEnumerable, Action)

但在这里我卡住了,因为我不知道如何实现它

Static.ForEach(IEnumerable,IEnumerable, ???Action????)

0