MoreEnumerable.MaxBy<TSource, TKey> Method (IEnumerable<TSource>, Func<TSource, TKey>, IComparer<TKey>) |
Returns the maximal element of the given sequence, based on
the given projection and the specified comparer for projected values.
Namespace:
MoreLinq
Assembly:
MoreLinq (in MoreLinq.dll) Version: 2.1.0
Syntaxpublic static TSource MaxBy<TSource, TKey>(
this IEnumerable<TSource> source,
Func<TSource, TKey> selector,
IComparer<TKey> comparer
)
<ExtensionAttribute>
Public Shared Function MaxBy(Of TSource, TKey) (
source As IEnumerable(Of TSource),
selector As Func(Of TSource, TKey),
comparer As IComparer(Of TKey)
) As TSource
public:
[ExtensionAttribute]
generic<typename TSource, typename TKey>
static TSource MaxBy(
IEnumerable<TSource>^ source,
Func<TSource, TKey>^ selector,
IComparer<TKey>^ comparer
)
[<ExtensionAttribute>]
static member MaxBy :
source : IEnumerable<'TSource> *
selector : Func<'TSource, 'TKey> *
comparer : IComparer<'TKey> -> 'TSource
Parameters
- source
- Type: System.Collections.Generic.IEnumerable<TSource>
Source sequence - selector
- Type: System.Func<TSource, TKey>
Selector to use to pick the results to compare - comparer
- Type: System.Collections.Generic.IComparer<TKey>
Comparer to use to compare projected values
Type Parameters
- TSource
- Type of the source sequence
- TKey
- Type of the projected element
Return Value
Type:
TSourceThe maximal element, according to the projection.
Usage Note
In Visual Basic and C#, you can call this method as an instance method on any object of type
IEnumerable<TSource>. 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).
Exceptions
Remarks
If more than one element has the maximal projected value, the first
one encountered will be returned. This operator uses immediate execution, but
only buffers a single result (the current maximal element).
See Also