首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用LINQ将集合拆分为`n`部分?

在编程中,LINQ(Language Integrated Query)是一种查询语言,用于简化对集合的操作。要使用LINQ将集合拆分为n部分,可以使用以下方法:

  1. 首先,确保已经安装了System.Linq命名空间。
代码语言:csharp
复制
using System.Linq;
  1. 使用SelectSkip方法将集合拆分为n部分。
代码语言:csharp
复制
public static List<List<T>> SplitList<T>(List<T> list, int n)
{
    var result = new List<List<T>>();
    int count = (int)Math.Ceiling((double)list.Count / n);

    for (int i = 0; i < n; i++)
    {
        result.Add(list.Skip(i * count).Take(count).ToList());
    }

    return result;
}

在这个方法中,我们首先计算每个子列表的大小,然后使用SkipTake方法将原始列表拆分为n个子列表。

以下是一个使用此方法的示例:

代码语言:csharp
复制
var originalList = new List<int> { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
int n = 3;

var splitList = SplitList(originalList, n);

foreach (var subList in splitList)
{
    Console.WriteLine(string.Join(", ", subList));
}

输出:

代码语言:txt
复制
1, 2, 3
4, 5, 6
7, 8, 9

这个方法可以用于任何类型的集合,只需将泛型参数T替换为所需的类型即可。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

没有搜到相关的视频

领券