[英]How to multiply two sequences in C# using lambda expressions?
如何使用Lambda表達式在C#中將兩個序列相乘? 例如,如果我有{1,2}
和{3,4}
,我希望結果為{3,4,6,8}
。
使用SelectMany
既可以生成笛卡爾乘積,又可以將兩個值相乘。
var query = from x in first
from y in second
select x * y;
使用lambda表達式:
int[] a = new int[] { 1, 2 };
int[] b = new int[] { 3, 4 };
var c = a.SelectMany(i => b.Select(j => i * j));
如果您的第一個數組稱為first,第二個數組稱為second,則可以執行此操作。
List<int> result = new List<int>();
first.ToList().ForEach(x => second.ToList().ForEach(y => result .Add(x * y)));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.