如何使用 linq 将列表中的两个项目配对?
How can I pair up two items from a list using linq?
我有一个如下所示的列表:
List<string> list = new List<string>()
{
"item1",
"item2",
"item3",
"item4"
};
我想按照这样的方式对项目进行分组:
[("item1", "item2"),("item3", "item4")]
我不介意我在 return 上有什么类型,如果它是 List
、IGrouping
、array
、IEnumberable<Tuple>
.. 我只是想让他们配对。我已经通过一个简单的索引来实现这一点,但我想知道我是否可以用 linq 来做到这一点(我在这里的实际研究对象是什么)
在 .NET 6 中,您可以使用 LINQ Chunk<TSource>(int size)
。
IEnumerable<string[]> groups = list.Chunk(2);
我有一个如下所示的列表:
List<string> list = new List<string>()
{
"item1",
"item2",
"item3",
"item4"
};
我想按照这样的方式对项目进行分组:
[("item1", "item2"),("item3", "item4")]
我不介意我在 return 上有什么类型,如果它是 List
、IGrouping
、array
、IEnumberable<Tuple>
.. 我只是想让他们配对。我已经通过一个简单的索引来实现这一点,但我想知道我是否可以用 linq 来做到这一点(我在这里的实际研究对象是什么)
在 .NET 6 中,您可以使用 LINQ Chunk<TSource>(int size)
。
IEnumerable<string[]> groups = list.Chunk(2);