如何使用linq连接两个没有相同字段的列表? 类sam { 公共空间m1() { 列表A=新列表(){1,2,3}; 列表B=新列表(){4,5,6}; for(int i=0;iM2(A,B)); var C=A.Zip(B,M2); 我只喜欢通过方法调用而不是directly@ratty:这一点也不清楚。也许你能给我们一些输入/输出的样本?或者编译的东西。@ratty:然后用方法替换lambda:A.Zip(B,M2)@VVS:我想你可能发现了什么。我把它放进去了。@Ani:我不明白为什么会有不同的C#3版本。 // C# 4 var C = A.Zip(B, M2); // C# 3 (not likely since Zip was introduced in .NET 4) var C = A.Zip(B, (a, b) => M2(a, b)); var C = A.Zip<int, int, int>(B, M2);
在这个程序中,我从两个列表中检索并通过一个列表。我喜欢在linQ中调用方法m2,问题不清楚,但您的意思可能是:如何使用linq连接两个没有相同字段的列表? 类sam { 公共空间m1() { 列表A=新列表(){1,2,3}; 列表B=新列表(){4,5,6}; for(int i=0;iM2(A,B)); var C=A.Zip(B,M2); 我只喜欢通过方法调用而不是directly@ratty:这一点也不清楚。也许你能给我们一些输入/输出的样本?或者编译的东西。@ratty:然后用方法替换lambda:A.Zip(B,M2)@VVS:我想你可能发现了什么。我把它放进去了。@Ani:我不明白为什么会有不同的C#3版本。 // C# 4 var C = A.Zip(B, M2); // C# 3 (not likely since Zip was introduced in .NET 4) var C = A.Zip(B, (a, b) => M2(a, b)); var C = A.Zip<int, int, int>(B, M2);,c#,linq,C#,Linq,在这个程序中,我从两个列表中检索并通过一个列表。我喜欢在linQ中调用方法m2,问题不清楚,但您的意思可能是: Class sam { public void m1() { List<int> A = new List<int>() {1,2,3}; List<int> B = new List<int>() {4,5,6}; for (int i = 0; i < A.cou
Class sam
{
public void m1()
{
List<int> A = new List<int>() {1,2,3};
List<int> B = new List<int>() {4,5,6};
for (int i = 0; i < A.count; i++)
{
c.add(m2(A[i], B[i]));
}
}
public int M2(int a, int b)
{
return a + b;
}
}
如果您想将添加内容交给M2
方法,可以执行以下操作:
var C = A.Zip(B, (a, b) => a + b)
.ToList();
/C#4
var C=A.Zip(B,M2);
//C#3(自从.NET4中引入Zip以来不太可能)
var C=A.Zip(B,(A,B)=>M2(A,B));
var C=A.Zip(B,M2);
我只喜欢通过方法调用而不是directly@ratty:这一点也不清楚。也许你能给我们一些输入/输出的样本?或者编译的东西。@ratty:然后用方法替换lambda:A.Zip(B,M2)
@VVS:我想你可能发现了什么。我把它放进去了。@Ani:我不明白为什么会有不同的C#3版本。
// C# 4
var C = A.Zip(B, M2);
// C# 3 (not likely since Zip was introduced in .NET 4)
var C = A.Zip(B, (a, b) => M2(a, b));
var C = A.Zip<int, int, int>(B, M2);