在 LINQ 中连接 2 个具有不同长度的列表

2023-11-29

如何连接两个不同长度的列表。它应该与序列结合在一起。 例如。

{1,2,3,4} with {5,6,7}

我需要得到如下结果。

{{1,5}, {2,6}, {3,7}, {4,null}}

我试过这个。

var qry = a.Select((i, index) => new {i, j = b[index]}); 

但由于列表的长度不同,它会抛出错误。 请帮助我找到解决方案。


这应该有效:

var a = new int?[] { 1, 2, 3, 4 };
var b = new int?[] { 5, 6, 7 };

var result = Enumerable.Range(0, Math.Max(a.Count(), b.Count()))
                       .Select(n => new[] {a.ElementAtOrDefault(n), b.ElementAtOrDefault(n)});

请注意?在数组声明中。为了在结果列表中包含空值,这是必要的。省略?导致结果为 0 而不是null.

如果您不能或不想将数组声明为int?,那么你必须在 Select 中进行强制转换,如下所示:

var result = Enumerable.Range(0, Math.Max(a.Count(), b.Count()))
                       .Select(n => new[] { a.Select(i => (int?)i).ElementAtOrDefault(n), b.Select(i => (int?)i).ElementAtOrDefault(n) });

第二位代码将与常规代码一起正常工作int数组或列表。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 LINQ 中连接 2 个具有不同长度的列表 的相关文章

  • json.net自定义jobject反序列化

    我正在尝试使用 JsonConvert DeserializeObject string 将字符串反序列化为可与动态一起使用的 jobject 来动态访问 json 文档 但是我想避免知道文档的大小写 以便我可以输入 dynamic doc
  • 为什么 F# 的默认集合是排序的,而 C# 的不是?

    当从 C 世界迁移到 F 最惯用的可能 思维方式时 我发现了这个有趣的差异 在 C 的 OOP mutable 世界中 默认的集合集合似乎是HashSet https learn microsoft com en us dotnet api
  • 在 Java 中创建 T 的新实例

    在C 中 我们可以定义一个泛型class A
  • linq 中使用字符串数组 c# 的 'orderby'

    假设我有一个这样的方法定义 public CustomerOrderData GetCustomerOrderData string CustomerIDs var query from a in db Customer join b in
  • 在 C# 中调用 C++ 库 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我有很多用 C 编写的库 我想从 C 调用这些库 但是 我遇到了很多问题 我想知道是否有书籍或指南告诉我如何做到这一点 Dll导入 htt
  • 从模板切换传递的类型

    在 C 中是否可以检查传递给模板函数的类型 例如 template
  • 计算另一个表达式中的 C# 表达式

    我想在另一个表达式中使用一个表达式 Expression
  • 为什么'enable_if'不能用于禁用这里声明

    include
  • C# 开源 NMEA 解析器 [已关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在寻找 C 开源 NMEA 解析器 嗯 我自己也不熟悉 但是一些快速搜索显示了一个代码项目 htt
  • 将接口转换为其具体实现对象,反之亦然?

    在 C 中 当我有一个接口和几个具体实现时 我可以将接口强制转换为具体类型 还是将具体类型强制转换为接口 这种情况下的规则是什么 Java 和 C 中都允许这两个方向 向下转型需要显式转型 如果对象类型不正确 可能会抛出异常 然而 向上转换
  • 在 asp.net MVC 中使用活动目录进行身份验证

    我想使用活动目录对我的 asp net mvc 项目中的用户进行身份验证 在网上冲浪了几个小时后 我没有找到任何对我有用的东西 我已经看到了所有结果 但什么也没有 我尝试按照许多帖子的建议编辑我的 web config 如果有人可以帮助我提
  • 从BackgroundWorker线程更新图像UI属性

    在我正在编写的 WPF 应用程序中 我有一个 TransformedBitmap 属性 该属性绑定到 UI 上的 Image 对象 每当我更改此属性时 图像就会更新 因此显示在屏幕上的图像也会更新 为了防止在检索下一张图像时 UI 冻结或变
  • 英文日期差异

    接近重复 如何计算相对时间 https stackoverflow com questions 11 how do i calculate relative time 如何在 C 中计算某人的年龄 https stackoverflow c
  • Linux mremap 不释放旧映射?

    我需要一种方法将页面从一个虚拟地址范围复制到另一个虚拟地址范围 而无需实际复制数据 范围很大 延迟很重要 mremap 可以做到这一点 但问题是它也会删除旧的映射 由于我需要在多线程环境中执行此操作 因此我需要旧映射能够同时使用 因此稍后当
  • ASP.NET MVC 路由:如何从 URL 中省略“索引”

    我有一个名为 StuffController 的控制器 具有无参数索引操作 我希望从表单中的 URL 调用此操作mysite com stuff 我的控制器定义为 public class StuffController BaseContr
  • 逆向工程 ASP.NET Web 应用程序

    我有一个 ASP NET Web 应用程序 我没有源代码 该 bin 包含 10 个程序集和一个 compiled 文件 我在 App Code dll 上使用 Reflector 它向我显示了类和命名空间之类的东西 但它太混乱了 有没有什
  • CUDA 8 编译错误 -std=gnu++11

    我正在尝试转换一些代码以使用 CUDA 并且我认为我遇到了兼容性问题 我们使用CMake 这些是我使用的 gcc 和 CUDA 版本 gcc version gcc Ubuntu 5 4 0 6ubuntu1 16 04 5 5 4 0 2
  • LINQ 中的“from..where”或“FirstOrDefault”

    传统上 当我尝试从数据库中获取用户的数据时 我使用了以下方法 在某种程度上 DbUsers curUser context DbUsers FirstOrDefault x gt x u LoginName id string name c
  • INotifyPropertyChanged 和 propertyName

    我一直不确定它的含义propertyName实施时INotifyPropertyChanged 所以一般来说你实现INotifyPropertyChanged as public class Data INotifyPropertyChan
  • 结构化绑定的用例有哪些?

    C 17 标准引入了新的结构化绑定 http en cppreference com w cpp language structured binding功能 最初是proposed http www open std org jtc1 sc

随机推荐

  • 如何在“sub”表达式中使用lambda表达式参数?

    我希望能够构建类似以下委托的表达式 Func
  • 无法停止 Firebase JobDispatcher 服务

    可能重复 我创建了一个 JobDispatcher 服务来不断在后台获取用户位置并将用户位置发布到服务器 为此 我创建了一个作业 如下所示 private void startLocationJobService Check if loca
  • MVC .net core 未正确显示特殊字符

    我在 MVC net core 网站中有一个非常简单的视图 model MvcSearch Models SearchModel ViewData Title Index h2 Buscador de Informaci n h2 div
  • Struts 2.0 中登录时使用的拦截器

    我正在设计一个基本应用程序 其中用户提供他的用户 ID 和密码 如果登录成功 他将被重定向到主页 现在 如果用户 ID 和密码不为空 我想使用拦截器进行验证 但我无法找出如何访问拦截器中请求参数的值 JSP代码
  • NUnit 在汇编中找不到测试

    我用 MSTest 继承了一个程序集 但这些测试是在构建机器上使用 nunit console 运行的 不确定它是如何工作的 所以我决定对其进行整理并将其更改为适当的 NUnit 测试 但现在 nunit console 或 gui 找不到
  • 如何在firebase中管理用户的不同身份验证

    请帮助我在以下情况下找到正确的解决方案 我正在使用 swift 开发 ios 应用程序 它将使用 Firebase 作为后端 用户应该能够使用电子邮件 密码或 和 Facebook 登录 Firebase 也许稍后会添加谷歌 对我来说 为每
  • Python列表列表初始化

    我知道 10 将给出 10 个相同空的引用 并且 for i in range 10 将给出 10 个空列表 但在这个例子中 def get list thing return thing for i in range 10 a get l
  • 使用 Vuex 4 时,Vue.js 2 中出现警告

    当我尝试在 Vue 2 中使用 Vuex 4 作为商店时 控制台中出现警告 我该如何解决它 在 vue 中找不到导出 注入 反应 监视 以下是package jsonVue v2 x 和 Vuex v4 x 的条目 store js imp
  • 滑入和滑出图像

    我试图实现一种平滑的效果 当一个图像滑出时 另一个图像滑入 此动画需要采用一种方式 当一个图像滑出时 另一个图像滑入 以便它们都占用内部空间同时div 就像是this or this 我创建了一个简单的jsFiddle 描述他面临的问题 g
  • JemmyFx jar 位置

    我想测试我的 JavaFX 应用程序 我听说 JemmyFX 是执行此操作的正确工具 但是 我找不到要下载的 Jar 我尝试在网上搜索它 但我只能找到this页面显示该项目的最后一次提交是一年多前 我有两个问题 1 JemmyFX 是否已发
  • cudaMemcpyToSymbol 性能

    我有一些函数可以将变量加载到常量设备内存中并启动内核函数 我注意到 一个函数第一次将变量加载到常量内存中需要 0 6 秒 但下一次加载常量内存的速度非常快 0 0008 秒 无论哪个函数是 main 中的第一个函数 都会发生此行为 下面是示
  • 如何折叠 t-sql 中空值的行?

    我的查询处境很奇怪 我的目标是显示每个人多笔交易的存款和取款总额并显示它们 我收到多行 需要将其合并为一行 这一切都需要在一个查询中发生 SELECT lastname firsname case when upper category W
  • html 中的 ol 中不能有 ul

    当我测试 HTML 时 出现以下验证错误 Please look at the attached image for the HTML code Element ul not allowed as child of element olin
  • JFrame 以及为什么保持运行

    为什么如果我创建一个 JFrame 那么程序仍然运行直到 即 我使用窗口的小 退出按钮 关闭它 我寻找这个答案但失败了 我唯一猜测的是当我这样做时new JFrame 这就像一个特别的new 它在 EDT 中保留对象的引用 因此它将始终被引
  • 用于名称属性中带有方括号的输入的 jQuery 选择器

    我试图选择名称属性中带有方括号的这个元素
  • 如何将 getAccessToken 与 fetch 函数集成以将数据从 DRF 后端加载到 React 前端?

    这里是 React 新手 但精通 Django 我有一个简单的 fetch 函数 它工作得很好 但我的项目没有涉及登录身份验证 现在我已经配置了登录系统 我的后端拒绝使用任何访问令牌来处理请求 我的登录身份验证对我来说非常陌生 或多或少是从
  • 基于两个向量构造该矩阵 MATLAB

    我确实有 2 个向量 我想基于 r 和 c 构造一个矩阵 r 1 2 4 6 8 c 2 4 6 8 10 我想构造一个矩阵 A 使得 A 1 2 A 2 4 A 4 6 A 6 8 A 8 10 1 其他元素 0 请帮忙 您可以使用稀疏矩
  • *整个*文档中某个元素之后的下一个元素

    这是多次被问到的问题的变体 给定任何元素 我希望能够在该元素之后找到任何其他元素entire文档 它可以是同级元素 但也可以是之后发生的任何其他元素 例如 给定以下标记 div p Hello p div p Foo p p class b
  • 如何使用 Python OpenCV 查找表格图像中的行数和列数?

    我们如何通过 OpenCV 获取图像表中的行数和列数 在我正确的表中获取框的代码 contours hierarchy cv2 findContours img final bin cv2 RETR TREE cv2 CHAIN APPRO
  • 在 LINQ 中连接 2 个具有不同长度的列表

    如何连接两个不同长度的列表 它应该与序列结合在一起 例如 1 2 3 4 with 5 6 7 我需要得到如下结果 1 5 2 6 3 7 4 null 我试过这个 var qry a Select i index gt new i j b