1

如果我有两个 foreach 循环,如下所示:

foreach(var a in b)
foreach(var c in d)

combining them into single foreach loop
foreach(var e in both b and d)
4

1 回答 1

11

不,没有“两种”语法。目前还不清楚你在追求什么如果你想连接,那么

foreach(var e in b.Concat(d))

如果你想要组合集:

foreach(var e in b.Union(d))

或者两者共有的集合:

foreach(var e in b.Intersect(d))

如果你想要一个交叉加入,那么也许SelectMany. 但坦率地说,为此,嵌套foreach在您的情况下同样合理和有效。

于 2012-07-20T07:21:29.160 回答