使用 LINQ 高效划分集合
数据操作通常需要将大型集合拆分为更小的、可管理的子集。 LINQ 为这个常见任务提供了一个优雅的解决方案。 以下 LINQ 扩展方法有效地将集合划分为指定数量的成比例的部分:
<code class="language-csharp">static class LinqExtensions { public static IEnumerable<IEnumerable<T>> Split<T>(this IEnumerable<T> list, int parts) { int i = 0; var splits = from item in list group item by i++ % parts into part select part.AsEnumerable(); return splits; } }</code>
此扩展方法利用了 LINQ 的分组功能。 它使用模运算符 (%) 将元素均匀分布在所需数量的 parts
上。输出是 IEnumerable
的 IEnumerable<T>
,其中每个内部 IEnumerable<T>
代表原始集合的一部分。
以上是如何使用 LINQ 将集合拆分为适当的部分?的详细内容。更多信息请关注PHP中文网其他相关文章!