【问题标题】:Creating sub arrays using LINQ [duplicate]使用 LINQ 创建子数组
【发布时间】:2012-08-10 10:06:40
【问题描述】:

可能重复:
Split List into Sublists with LINQ
Split a collection into n parts with LINQ?

我有一个这样的数组:

[1,2,4,5.....n]

我想把它转换成这样的子数组:

[
   [1,2,3],
   [4,5,6],
   ...
]

基本上我想将数组分组为 n 个成员

是否有任何 LINQ 函数可以帮助我完成此任务?

我在想GroupBySelectMany 但我还没想好怎么做

注意,我已经使用foreach 语句完成了此操作,但我想使用 LINQ 完成此操作

【问题讨论】:

    标签: c#


    【解决方案1】:
            int[] ar = new int[] {1,2,3,4,5,6};
            var gr = ar
                .Select( (e, i) => new {e, p=i/3})
                .GroupBy( e => e.p )
                .Select( g => g
                    .Select(e => e.e)
                    .ToArray()
                )
                .ToArray();
    

    【讨论】:

      猜你喜欢
      • 2011-05-25
      • 2023-03-20
      • 2010-11-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多