Enumerable.Chunk<TSource>(IEnumerable<TSource>, Int32) Method

Definition

Split the elements of a sequence into chunks of size at most size.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static System::Collections::Generic::IEnumerable<cli::array <TSource> ^> ^ Chunk(System::Collections::Generic::IEnumerable<TSource> ^ source, int size);
public static System.Collections.Generic.IEnumerable<TSource[]> Chunk<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, int size);
static member Chunk : seq<'Source> * int -> seq<'Source[]>
<Extension()>
Public Function Chunk(Of TSource) (source As IEnumerable(Of TSource), size As Integer) As IEnumerable(Of TSource())

Type Parameters

TSource

The type of the elements of source.

Parameters

source
IEnumerable<TSource>

An IEnumerable<T> whose elements to chunk.

size
Int32

The maximum size of each chunk.

Returns

IEnumerable<TSource[]>

An IEnumerable<T> that contains the elements the input sequence split into chunks of size size.

Exceptions

source is null.

size is below 1.

Remarks

Every chunk except the last will be of size size. The last chunk will contain the remaining elements and may be of a smaller size.

Applies to