ShuffleExtensionShuffleT Method (IEnumerableT, 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.Extensions
Assembly:
MoreLinq (in MoreLinq.dll) Version: 3.0.0
Syntax public static IEnumerable<T> Shuffle<T>(
this IEnumerable<T> source,
Random rand
)
<ExtensionAttribute>
Public Shared Function Shuffle(Of T) (
source As IEnumerable(Of T),
rand As Random
) As IEnumerable(Of T)
public:
[ExtensionAttribute]
generic<typename T>
static IEnumerable<T>^ Shuffle(
IEnumerable<T>^ source,
Random^ rand
)
[<ExtensionAttribute>]
static member Shuffle :
source : IEnumerable<'T> *
rand : Random -> IEnumerable<'T>
Parameters
- source
- Type: System.Collections.GenericIEnumerableT
The sequence from which to return random elements. - rand
- Type: SystemRandom
A random generator used as part of the selection algorithm.
Type Parameters
- T
- The type of source sequence elements.
Return Value
Type:
IEnumerableT
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
IEnumerableT. 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