Skip to content

M_CodeJam_Collections_EnumerableExtensions_MaxByOrDefault__2_1

Andrew Koryavchenko edited this page Jun 17, 2018 · 5 revisions

EnumerableExtensions.MaxByOrDefault(TSource, TValue) Method (IEnumerable(TSource), Func(TSource, TValue), TSource)

Invokes a selector on each element of a source and returns the item with maximum value.

Namespace: CodeJam.Collections
Assembly: CodeJam (in CodeJam.dll) Version: 2.1.0.0

Syntax

C#

public static TSource MaxByOrDefault<TSource, TValue>(
	this IEnumerable<TSource> source,
	Func<TSource, TValue> selector,
	TSource defaultValue = null
)

VB

<ExtensionAttribute>
Public Shared Function MaxByOrDefault(Of TSource, TValue) ( 
	source As IEnumerable(Of TSource),
	selector As Func(Of TSource, TValue),
	Optional defaultValue As TSource = Nothing
) As TSource

F#

[<ExtensionAttribute>]
static member MaxByOrDefault : 
        source : IEnumerable<'TSource> * 
        selector : Func<'TSource, 'TValue> * 
        ?defaultValue : 'TSource 
(* Defaults:
        let _defaultValue = defaultArg defaultValue null
*)
-> 'TSource 

Parameters

 

source
Type: System.Collections.Generic.IEnumerable(TSource)
A sequence of values to determine the maximum value of.
selector
Type: System.Func(TSource, TValue)
A transform function to apply to each element.
defaultValue (Optional)
Type: TSource
Value returned if collection contains no not null elements.

Type Parameters

 

TSource
The type of the elements of source.
TValue
Type of the value

Return Value

Type: TSource
The item with maximum value in the sequence or TSource default value if source has no not null elements.

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).

See Also

Reference

EnumerableExtensions Class
MaxByOrDefault Overload
CodeJam.Collections Namespace

Clone this wiki locally