MoreEnumerableToArrayByIndexT, TResult Method (IEnumerableT, Int32, FuncT, Int32, FuncT, Int32, TResult) |
Creates an array of user-specified length from an
IEnumerableT where a function is used to determine
the index at which an element will be placed in the array. The
elements are projected into the array via an additional function.
Namespace:
MoreLinq
Assembly:
MoreLinq (in MoreLinq.dll) Version: 2.8.0
Syntax public static TResult[] ToArrayByIndex<T, TResult>(
this IEnumerable<T> source,
int length,
Func<T, int> indexSelector,
Func<T, int, TResult> resultSelector
)
<ExtensionAttribute>
Public Shared Function ToArrayByIndex(Of T, TResult) (
source As IEnumerable(Of T),
length As Integer,
indexSelector As Func(Of T, Integer),
resultSelector As Func(Of T, Integer, TResult)
) As TResult()
public:
[ExtensionAttribute]
generic<typename T, typename TResult>
static array<TResult>^ ToArrayByIndex(
IEnumerable<T>^ source,
int length,
Func<T, int>^ indexSelector,
Func<T, int, TResult>^ resultSelector
)
[<ExtensionAttribute>]
static member ToArrayByIndex :
source : IEnumerable<'T> *
length : int *
indexSelector : Func<'T, int> *
resultSelector : Func<'T, int, 'TResult> -> 'TResult[]
Parameters
- source
- Type: System.Collections.GenericIEnumerableT
The source sequence for the array. - length
- Type: SystemInt32
The (non-negative) length of the resulting array. - indexSelector
- Type: SystemFuncT, Int32
A function that maps an element to its index. - resultSelector
- Type: SystemFuncT, Int32, TResult
A function to project a source element into an element of the
resulting array.
Type Parameters
- T
-
The type of the element in source.
- TResult
-
The type of the element in the resulting array.
Return Value
Type:
TResult
An array of size
length that contains the
projected elements from the input sequence.
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 forces immediate query evaluation. It should not be
used on infinite sequences. If more than one element maps to the
same index then the latter element overwrites the former in the
resulting array.
See Also