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

Definition

Splits 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

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

Applies to

See also