Click or drag to resize

MoreEnumerable.Shuffle<T> Method (IEnumerable<T>, Random)

Returns a sequence of elements in random order from the original sequence. An additional parameter specifies a random generator to be used for the random selection algorithm.

Namespace:  MoreLinq
Assembly:  MoreLinq (in MoreLinq.dll) Version: 3.3.1+b77df70598ab84c28cd43dcf74594024b6d575e1
Syntax
public static IEnumerable<T> Shuffle<T>(
	this IEnumerable<T> source,
	Random rand
)

Parameters

source
Type: System.Collections.Generic.IEnumerable<T>
The sequence from which to return random elements.
rand
Type: System.Random
A random generator used as part of the selection algorithm.

Type Parameters

T
The type of source sequence elements.

Return Value

Type: IEnumerable<T>
A sequence of elements source randomized in their order.

Usage Note

In Visual Basic and C#, you can call this method as an instance method on any object of type IEnumerable<T>. When you use instance method syntax to call this method, omit the first parameter. For more information, see Extension Methods (Visual Basic) or Extension Methods (C# Programming Guide).
Remarks
This method uses deferred execution and streams its results. The source sequence is entirely buffered before the results are streamed.
See Also