如何最优雅地迭代C#中的并行集合?

Ser*_*hov 4 .net linq puzzle collections c#-3.0

        var a = new Collection<string> {"a", "b", "c"};
        var b = new Collection<int> { 1, 2, 3 };
Run Code Online (Sandbox Code Playgroud)

迭代两者产生一组结果"a1","b2","c3"的最优雅方式是什么?

And*_*are 13

这被称为"压缩"或"拉链连接"两个序列.Eric Lippert 描述了这种算法并提供了一种实现方式.