转换列表到元组列表c#

本文关键字:列表 元组 转换 | 更新日期: 2023-09-27 18:11:23

如何将项目列表转换为元组列表。

示例1:Sourcelist [item1]Destinationlist [{item1, null}]

示例2:来源列表[item1, item2]Destinationlist [{item1, item2}]

示例2:来源列表[item1, item2, item3]Destinationlist [{item1, item2}, {item3, null]]

转换列表到元组列表c#

首先使用包含索引的Select的重载。然后对指数分组除以2。最后将分组,其中将有一个或两个项目放入Tuple

var result = source.Select((v,i) => new { Index = i, Value = v })
    .GroupBy(x => x.Index/2, x => x.Value)
    .Select(g => Tuple.Create(g.First(), g.Skip(1).FirstOrDefault()));