c# - 如何使用 linq 连接两个没有相同字段的列表?

标签 c# linq

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;
    }
}

在这个程序中,我从两个列表中检索并传递参数。我喜欢在linQ中调用方法m2

最佳答案

问题不清楚,但也许你的意思是:

var C = A.Zip(B, (a, b) => a + b)
         .ToList();

如果您想将添加内容移交给 M2 方法,您可以这样做:

// 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 连接两个没有相同字段的列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4458579/

相关文章:

c# - 从 MVVM/WPF 中的 BackgroundWorker 更新位图

c# - EWS 托管 API : Searching an Inbox other than the main mailbox associated with Windows login

sql - Linq 版 SQL "IN"语句

c# - 使用未知类型动态构建 LINQ 表达式

c# - Gridview在 View 状态中使用自定义对象插入删除

c# - 如何将带有数字的帕斯卡大小写转换为句子?

c# - 简化 HTMLAgilitypack 文档中的 Linq 搜索

c# - Lambda 表达式 if-else 语句在 where 子句中

c# - 如何使用 RedirectToAction 维护 ModelState?

c# - List<T> LINQ 投影到匿名或动态类型