[英]How do I take the Cartesian join of two lists in c#?
如何對兩個包含整數的列表進行笛卡爾連接?
這可以用linq完成嗎?
假設您的意思是“交叉連接”或“笛卡爾連接”:
var query = from x in firstList
from y in secondList
select new { x, y }
或者:
var query = firstList.SelectMany(x => secondList, (x, y) => new { x, y });
如果您想要其他東西(正如您從評論中看到的那樣,“交叉產品”一詞引起了一些混亂),請適當地編輯您的問題。 一個例子會非常方便:)
出於好奇,實現此目的的另一種方法(產生與 Jon Skeet 的答案相同的結果)是:
firstList.Join(secondList, x => true, y => true, (m, n) => new { m, n });
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.