Teilen Sie eine Sammlung mit LINQ in Teilmengen auf
LINQ ermöglicht die Aufteilung einer Sammlung in eine bestimmte Anzahl von Teilmengen. Im Gegensatz zur gleichmäßigen Aufteilung kann die letzte Teilmenge eine andere Anzahl von Elementen haben als die anderen Teilmengen.
Um dies zu erreichen, können wir eine einfache LINQ-Erweiterungsmethode verwenden:
<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>
Mit dieser Methode können Sie die Sammlung in Untersammlungen unterteilen und gleichzeitig sicherstellen, dass die letzte Teilmenge unterschiedlich groß sein kann. Der obige Code tut dies, indem er Elemente basierend auf ihrem Index modulo der Anzahl der Teilmengen gruppiert und sie effektiv verschiedenen Teilmengen zuordnet.
Das obige ist der detaillierte Inhalt vonWie kann ich eine Sammlung mithilfe von LINQ in Teilmengen (nahezu) gleicher Größe aufteilen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!