Enumerable.Max Metoda

Definice

Vrátí maximální hodnotu v posloupnosti hodnot.

Přetížení

Max(IEnumerable<Nullable<Int32>>)

Vrátí maximální hodnotu v posloupnosti hodnot nullable Int32 .

Max(IEnumerable<Single>)

Vrátí maximální hodnotu v posloupnosti Single hodnot.

Max(IEnumerable<Nullable<Single>>)

Vrátí maximální hodnotu v posloupnosti hodnot nullable Single .

Max(IEnumerable<Nullable<Int64>>)

Vrátí maximální hodnotu v posloupnosti hodnot nullable Int64 .

Max(IEnumerable<Nullable<Double>>)

Vrátí maximální hodnotu v posloupnosti hodnot nullable Double .

Max(IEnumerable<Double>)

Vrátí maximální hodnotu v posloupnosti Double hodnot.

Max(IEnumerable<Int64>)

Vrátí maximální hodnotu v posloupnosti Int64 hodnot.

Max(IEnumerable<Int32>)

Vrátí maximální hodnotu v posloupnosti Int32 hodnot.

Max(IEnumerable<Decimal>)

Vrátí maximální hodnotu v posloupnosti Decimal hodnot.

Max(IEnumerable<Nullable<Decimal>>)

Vrátí maximální hodnotu v posloupnosti hodnot nullable Decimal .

Max<TSource,TResult>(IEnumerable<TSource>, Func<TSource,TResult>)

Vyvolá transformační funkci na každý prvek obecné sekvence a vrátí maximální výslednou hodnotu.

Max<TSource>(IEnumerable<TSource>, Func<TSource,Single>)

Vyvolá transformační funkci pro každý prvek sekvence a vrátí maximální Single hodnotu.

Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>)

Vyvolá transformační funkci pro každý prvek sekvence a vrátí maximální hodnotu s možnou Single hodnotou null.

Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>)

Vyvolá transformační funkci pro každý prvek sekvence a vrátí maximální hodnotu s možnou Int64 hodnotou null.

Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>)

Vyvolá transformační funkci pro každý prvek sekvence a vrátí maximální hodnotu s možnou Int32 hodnotou null.

Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>)

Vyvolá transformační funkci pro každý prvek sekvence a vrátí maximální hodnotu s možnou Decimal hodnotou null.

Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>)

Vyvolá transformační funkci pro každý prvek sekvence a vrátí maximální hodnotu s možnou Double hodnotou null.

Max<TSource>(IEnumerable<TSource>, Func<TSource,Int32>)

Vyvolá transformační funkci pro každý prvek sekvence a vrátí maximální Int32 hodnotu.

Max<TSource>(IEnumerable<TSource>, Func<TSource,Double>)

Vyvolá transformační funkci pro každý prvek sekvence a vrátí maximální Double hodnotu.

Max<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>)

Vyvolá transformační funkci pro každý prvek sekvence a vrátí maximální Decimal hodnotu.

Max<TSource>(IEnumerable<TSource>, IComparer<TSource>)

Vrátí maximální hodnotu v obecné sekvenci.

Max<TSource>(IEnumerable<TSource>)

Vrátí maximální hodnotu v obecné sekvenci.

Max<TSource>(IEnumerable<TSource>, Func<TSource,Int64>)

Vyvolá transformační funkci pro každý prvek sekvence a vrátí maximální Int64 hodnotu.

Max(IEnumerable<Nullable<Int32>>)

Vrátí maximální hodnotu v posloupnosti hodnot nullable Int32 .

public:
[System::Runtime::CompilerServices::Extension]
 static Nullable<int> Max(System::Collections::Generic::IEnumerable<Nullable<int>> ^ source);
public static int? Max (this System.Collections.Generic.IEnumerable<int?> source);
static member Max : seq<Nullable<int>> -> Nullable<int>
<Extension()>
Public Function Max (source As IEnumerable(Of Nullable(Of Integer))) As Nullable(Of Integer)

Parametry

source
IEnumerable<Nullable<Int32>>

Posloupnost hodnot s možnou Int32 hodnotou null k určení maximální hodnoty.

Návraty

Hodnota typu Nullable<Int32> v jazyce C# nebo Nullable(Of Int32) Visual Basic, která odpovídá maximální hodnotě v sekvenci.

Výjimky

source je null.

Poznámky

Metoda Max(IEnumerable<Nullable<Int32>>) používá implementaci Int32 k IComparable<T> porovnání hodnot.

Pokud je zdrojová sekvence prázdná nebo obsahuje pouze hodnoty, které jsou null, vrátí nulltato funkce .

V syntaxi výrazu dotazu jazyka Visual Basic se Aggregate Into Max() klauzule překládá na vyvolání Max.

Viz také

Platí pro

Max(IEnumerable<Single>)

Vrátí maximální hodnotu v posloupnosti Single hodnot.

public:
[System::Runtime::CompilerServices::Extension]
 static float Max(System::Collections::Generic::IEnumerable<float> ^ source);
public static float Max (this System.Collections.Generic.IEnumerable<float> source);
static member Max : seq<single> -> single
<Extension()>
Public Function Max (source As IEnumerable(Of Single)) As Single

Parametry

source
IEnumerable<Single>

Posloupnost Single hodnot pro určení maximální hodnoty.

Návraty

Maximální hodnota v sekvenci

Výjimky

source je null.

source neobsahuje žádné prvky.

Poznámky

Metoda Max(IEnumerable<Single>) používá implementaci Single k IComparable<T> porovnání hodnot.

V syntaxi výrazu dotazu jazyka Visual Basic se Aggregate Into Max() klauzule překládá na vyvolání Max.

Viz také

Platí pro

Max(IEnumerable<Nullable<Single>>)

Vrátí maximální hodnotu v posloupnosti hodnot nullable Single .

public:
[System::Runtime::CompilerServices::Extension]
 static Nullable<float> Max(System::Collections::Generic::IEnumerable<Nullable<float>> ^ source);
public static float? Max (this System.Collections.Generic.IEnumerable<float?> source);
static member Max : seq<Nullable<single>> -> Nullable<single>
<Extension()>
Public Function Max (source As IEnumerable(Of Nullable(Of Single))) As Nullable(Of Single)

Parametry

source
IEnumerable<Nullable<Single>>

Posloupnost hodnot s možnou Single hodnotou null k určení maximální hodnoty.

Návraty

Hodnota typu Nullable<Single> v jazyce C# nebo Nullable(Of Single) Visual Basic, která odpovídá maximální hodnotě v sekvenci.

Výjimky

source je null.

Poznámky

Metoda Max(IEnumerable<Nullable<Single>>) používá implementaci Single k IComparable<T> porovnání hodnot.

Pokud je zdrojová sekvence prázdná nebo obsahuje pouze hodnoty, které jsou null, vrátí nulltato funkce .

V syntaxi výrazu dotazu jazyka Visual Basic se Aggregate Into Max() klauzule překládá na vyvolání Max.

Viz také

Platí pro

Max(IEnumerable<Nullable<Int64>>)

Vrátí maximální hodnotu v posloupnosti hodnot nullable Int64 .

public:
[System::Runtime::CompilerServices::Extension]
 static Nullable<long> Max(System::Collections::Generic::IEnumerable<Nullable<long>> ^ source);
public static long? Max (this System.Collections.Generic.IEnumerable<long?> source);
static member Max : seq<Nullable<int64>> -> Nullable<int64>
<Extension()>
Public Function Max (source As IEnumerable(Of Nullable(Of Long))) As Nullable(Of Long)

Parametry

source
IEnumerable<Nullable<Int64>>

Posloupnost hodnot s možnou Int64 hodnotou null k určení maximální hodnoty.

Návraty

Hodnota typu Nullable<Int64> v jazyce C# nebo Nullable(Of Int64) Visual Basic, která odpovídá maximální hodnotě v sekvenci.

Výjimky

source je null.

Poznámky

Metoda Max(IEnumerable<Nullable<Int64>>) používá implementaci Int64 k IComparable<T> porovnání hodnot.

Pokud je zdrojová sekvence prázdná nebo obsahuje pouze hodnoty, které jsou null, vrátí nulltato funkce .

V syntaxi výrazu dotazu jazyka Visual Basic se Aggregate Into Max() klauzule překládá na vyvolání Max.

Viz také

Platí pro

Max(IEnumerable<Nullable<Double>>)

Vrátí maximální hodnotu v posloupnosti hodnot nullable Double .

public:
[System::Runtime::CompilerServices::Extension]
 static Nullable<double> Max(System::Collections::Generic::IEnumerable<Nullable<double>> ^ source);
public static double? Max (this System.Collections.Generic.IEnumerable<double?> source);
static member Max : seq<Nullable<double>> -> Nullable<double>
<Extension()>
Public Function Max (source As IEnumerable(Of Nullable(Of Double))) As Nullable(Of Double)

Parametry

source
IEnumerable<Nullable<Double>>

Posloupnost hodnot s možnou Double hodnotou null k určení maximální hodnoty.

Návraty

Hodnota typu Nullable<Double> v jazyce C# nebo Nullable(Of Double) Visual Basic, která odpovídá maximální hodnotě v sekvenci.

Výjimky

source je null.

Příklady

Následující příklad kódu ukazuje, jak použít Max(IEnumerable<Nullable<Double>>) k určení maximální hodnoty v sekvenci.

double?[] doubles = { null, 1.5E+104, 9E+103, -2E+103 };

double? max = doubles.Max();

Console.WriteLine("The largest number is {0}.", max);

/*
 This code produces the following output:

 The largest number is 1.5E+104.
*/
' Create an array of Nullable Double values.
Dim doubles() As Nullable(Of Double) =
{Nothing, 1.5E+104, 9.0E+103, -2.0E+103}

' Determine the maximum value in the array.
Dim max As Nullable(Of Double) = doubles.Max()

' Display the result.
Console.WriteLine($"The largest number is {max}")

' This code produces the following output:
'
' The largest number is 1.5E+104

Poznámky

Metoda Max(IEnumerable<Nullable<Double>>) používá implementaci Double k IComparable<T> porovnání hodnot.

Pokud je zdrojová sekvence prázdná nebo obsahuje pouze hodnoty, které jsou null, vrátí nulltato funkce .

V syntaxi výrazu dotazu jazyka Visual Basic se Aggregate Into Max() klauzule překládá na vyvolání Max.

Viz také

Platí pro

Max(IEnumerable<Double>)

Vrátí maximální hodnotu v posloupnosti Double hodnot.

public:
[System::Runtime::CompilerServices::Extension]
 static double Max(System::Collections::Generic::IEnumerable<double> ^ source);
public static double Max (this System.Collections.Generic.IEnumerable<double> source);
static member Max : seq<double> -> double
<Extension()>
Public Function Max (source As IEnumerable(Of Double)) As Double

Parametry

source
IEnumerable<Double>

Posloupnost Double hodnot pro určení maximální hodnoty.

Návraty

Maximální hodnota v sekvenci

Výjimky

source je null.

source neobsahuje žádné prvky.

Poznámky

Metoda Max(IEnumerable<Double>) používá implementaci Double k IComparable<T> porovnání hodnot.

V syntaxi výrazu dotazu jazyka Visual Basic se Aggregate Into Max() klauzule překládá na vyvolání Max.

Viz také

Platí pro

Max(IEnumerable<Int64>)

Vrátí maximální hodnotu v posloupnosti Int64 hodnot.

public:
[System::Runtime::CompilerServices::Extension]
 static long Max(System::Collections::Generic::IEnumerable<long> ^ source);
public static long Max (this System.Collections.Generic.IEnumerable<long> source);
static member Max : seq<int64> -> int64
<Extension()>
Public Function Max (source As IEnumerable(Of Long)) As Long

Parametry

source
IEnumerable<Int64>

Posloupnost Int64 hodnot pro určení maximální hodnoty.

Návraty

Maximální hodnota v sekvenci

Výjimky

source je null.

source neobsahuje žádné prvky.

Příklady

Následující příklad kódu ukazuje, jak použít Max(IEnumerable<Int64>) k určení maximální hodnoty v sekvenci.

List<long> longs = new List<long> { 4294967296L, 466855135L, 81125L };

long max = longs.Max();

Console.WriteLine("The largest number is {0}.", max);

/*
 This code produces the following output:

 The largest number is 4294967296.
*/
' Create a list of Long values.
Dim longs As New List(Of Long)(New Long() _
                           {4294967296L, 466855135L, 81125L})

' Get the maximum value in the list.
Dim max As Long = longs.Max()

' Display the result.
Console.WriteLine($"The largest number is {max}")

' This code produces the following output:
'
' The largest number is 4294967296

Poznámky

Metoda Max(IEnumerable<Int64>) používá implementaci Int64 k IComparable<T> porovnání hodnot.

V syntaxi výrazu dotazu jazyka Visual Basic se Aggregate Into Max() klauzule překládá na vyvolání Max.

Viz také

Platí pro

Max(IEnumerable<Int32>)

Vrátí maximální hodnotu v posloupnosti Int32 hodnot.

public:
[System::Runtime::CompilerServices::Extension]
 static int Max(System::Collections::Generic::IEnumerable<int> ^ source);
public static int Max (this System.Collections.Generic.IEnumerable<int> source);
static member Max : seq<int> -> int
<Extension()>
Public Function Max (source As IEnumerable(Of Integer)) As Integer

Parametry

source
IEnumerable<Int32>

Posloupnost Int32 hodnot pro určení maximální hodnoty.

Návraty

Maximální hodnota v sekvenci

Výjimky

source je null.

source neobsahuje žádné prvky.

Poznámky

Metoda Max(IEnumerable<Int32>) používá implementaci Int32 k IComparable<T> porovnání hodnot.

V syntaxi výrazu dotazu jazyka Visual Basic se Aggregate Into Max() klauzule překládá na vyvolání Max.

Viz také

Platí pro

Max(IEnumerable<Decimal>)

Vrátí maximální hodnotu v posloupnosti Decimal hodnot.

public:
[System::Runtime::CompilerServices::Extension]
 static System::Decimal Max(System::Collections::Generic::IEnumerable<System::Decimal> ^ source);
public static decimal Max (this System.Collections.Generic.IEnumerable<decimal> source);
static member Max : seq<decimal> -> decimal
<Extension()>
Public Function Max (source As IEnumerable(Of Decimal)) As Decimal

Parametry

source
IEnumerable<Decimal>

Posloupnost Decimal hodnot pro určení maximální hodnoty.

Návraty

Maximální hodnota v sekvenci

Výjimky

source je null.

source neobsahuje žádné prvky.

Poznámky

Metoda Max(IEnumerable<Decimal>) používá implementaci Decimal k IComparable<T> porovnání hodnot.

V syntaxi výrazu dotazu jazyka Visual Basic se Aggregate Into Max() klauzule překládá na vyvolání Max.

Viz také

Platí pro

Max(IEnumerable<Nullable<Decimal>>)

Vrátí maximální hodnotu v posloupnosti hodnot nullable Decimal .

public:
[System::Runtime::CompilerServices::Extension]
 static Nullable<System::Decimal> Max(System::Collections::Generic::IEnumerable<Nullable<System::Decimal>> ^ source);
public static decimal? Max (this System.Collections.Generic.IEnumerable<decimal?> source);
static member Max : seq<Nullable<decimal>> -> Nullable<decimal>
<Extension()>
Public Function Max (source As IEnumerable(Of Nullable(Of Decimal))) As Nullable(Of Decimal)

Parametry

source
IEnumerable<Nullable<Decimal>>

Posloupnost hodnot s možnou Decimal hodnotou null k určení maximální hodnoty.

Návraty

Hodnota typu Nullable<Decimal> v jazyce C# nebo Nullable(Of Decimal) Visual Basic, která odpovídá maximální hodnotě v sekvenci.

Výjimky

source je null.

Poznámky

Metoda Max(IEnumerable<Nullable<Decimal>>) používá implementaci Decimal k IComparable<T> porovnání hodnot.

Pokud je zdrojová sekvence prázdná nebo obsahuje pouze hodnoty, které jsou null, vrátí nulltato funkce .

V syntaxi výrazu dotazu jazyka Visual Basic se Aggregate Into Max() klauzule překládá na vyvolání Max.

Viz také

Platí pro

Max<TSource,TResult>(IEnumerable<TSource>, Func<TSource,TResult>)

Vyvolá transformační funkci na každý prvek obecné sekvence a vrátí maximální výslednou hodnotu.

public:
generic <typename TSource, typename TResult>
[System::Runtime::CompilerServices::Extension]
 static TResult Max(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, TResult> ^ selector);
public static TResult Max<TSource,TResult> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,TResult> selector);
public static TResult? Max<TSource,TResult> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,TResult> selector);
static member Max : seq<'Source> * Func<'Source, 'Result> -> 'Result
<Extension()>
Public Function Max(Of TSource, TResult) (source As IEnumerable(Of TSource), selector As Func(Of TSource, TResult)) As TResult

Parametry typu

TSource

Typ prvků objektu source.

TResult

Typ hodnoty vrácené parametrem selector.

Parametry

source
IEnumerable<TSource>

Posloupnost hodnot pro určení maximální hodnoty.

selector
Func<TSource,TResult>

Transformační funkce, která se použije u každého prvku.

Návraty

TResult

Maximální hodnota v sekvenci

Výjimky

source nebo selector je null.

Příklady

Následující příklad kódu ukazuje, jak použít Max<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) k určení maximální hodnoty v posloupnosti projektovaných hodnot.

Poznámka

Tento příklad kódu používá přetížení metody, které se liší od konkrétního přetížení popsaného v tomto článku. Pokud chcete příklad rozšířit na přetížení popsané v tomto článku, změňte tělo selector funkce.

class Pet
{
    public string Name { get; set; }
    public int Age { get; set; }
}

public static void MaxEx4()
{
    Pet[] pets = { new Pet { Name="Barley", Age=8 },
                   new Pet { Name="Boots", Age=4 },
                   new Pet { Name="Whiskers", Age=1 } };

    int max = pets.Max(pet => pet.Age + pet.Name.Length);

    Console.WriteLine(
        "The maximum pet age plus name length is {0}.",
        max);
}

/*
 This code produces the following output:

 The maximum pet age plus name length is 14.
*/
Structure Pet
    Public Name As String
    Public Age As Integer
End Structure

Sub MaxEx4()
    ' Create an array of Pet objects.
    Dim pets() As Pet = {New Pet With {.Name = "Barley", .Age = 8},
                     New Pet With {.Name = "Boots", .Age = 4},
                     New Pet With {.Name = "Whiskers", .Age = 1}}

    ' Determine the "maximum" pet by passing a
    ' lambda expression to Max() that sums the pet's age
    ' and name length.
    Dim max As Integer = pets.Max(Function(pet) _
                                  pet.Age + pet.Name.Length)

    ' Display the result.
    Console.WriteLine($"The maximum pet age plus name length is {max}")
End Sub

' This code produces the following output:
'
' The maximum pet age plus name length is 14

Poznámky

Pokud typ TResult implementuje IComparable<T>, tato metoda používá tuto implementaci k porovnání hodnot. Jinak pokud typ TResult implementuje IComparable, použije se tato implementace k porovnání hodnot.

V syntaxi výrazu dotazu jazyka Visual Basic se Aggregate Into Max() klauzule překládá na vyvolání Max.

Viz také

Platí pro

Max<TSource>(IEnumerable<TSource>, Func<TSource,Single>)

Vyvolá transformační funkci pro každý prvek sekvence a vrátí maximální Single hodnotu.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static float Max(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, float> ^ selector);
public static float Max<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,float> selector);
static member Max : seq<'Source> * Func<'Source, single> -> single
<Extension()>
Public Function Max(Of TSource) (source As IEnumerable(Of TSource), selector As Func(Of TSource, Single)) As Single

Parametry typu

TSource

Typ prvků objektu source.

Parametry

source
IEnumerable<TSource>

Posloupnost hodnot pro určení maximální hodnoty.

selector
Func<TSource,Single>

Transformační funkce, která se použije u každého prvku.

Návraty

Maximální hodnota v sekvenci

Výjimky

source nebo selector je null.

source neobsahuje žádné prvky.

Příklady

Následující příklad kódu ukazuje, jak použít Max<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) k určení maximální hodnoty v posloupnosti projektovaných hodnot.

Poznámka

Tento příklad kódu používá přetížení metody, které se liší od konkrétního přetížení popsaného v tomto článku. Pokud chcete příklad rozšířit na přetížení popsané v tomto článku, změňte tělo selector funkce.

class Pet
{
    public string Name { get; set; }
    public int Age { get; set; }
}

public static void MaxEx4()
{
    Pet[] pets = { new Pet { Name="Barley", Age=8 },
                   new Pet { Name="Boots", Age=4 },
                   new Pet { Name="Whiskers", Age=1 } };

    int max = pets.Max(pet => pet.Age + pet.Name.Length);

    Console.WriteLine(
        "The maximum pet age plus name length is {0}.",
        max);
}

/*
 This code produces the following output:

 The maximum pet age plus name length is 14.
*/
Structure Pet
    Public Name As String
    Public Age As Integer
End Structure

Sub MaxEx4()
    ' Create an array of Pet objects.
    Dim pets() As Pet = {New Pet With {.Name = "Barley", .Age = 8},
                     New Pet With {.Name = "Boots", .Age = 4},
                     New Pet With {.Name = "Whiskers", .Age = 1}}

    ' Determine the "maximum" pet by passing a
    ' lambda expression to Max() that sums the pet's age
    ' and name length.
    Dim max As Integer = pets.Max(Function(pet) _
                                  pet.Age + pet.Name.Length)

    ' Display the result.
    Console.WriteLine($"The maximum pet age plus name length is {max}")
End Sub

' This code produces the following output:
'
' The maximum pet age plus name length is 14

Poznámky

Metoda Max<TSource>(IEnumerable<TSource>, Func<TSource,Single>) používá implementaci Single k IComparable<T> porovnání hodnot.

Tuto metodu můžete použít na sekvenci libovolných hodnot, pokud zadáte funkci , selectorkterá promítá členy do číselného source typu, konkrétně Single.

V syntaxi výrazu dotazu jazyka Visual Basic se Aggregate Into Max() klauzule překládá na vyvolání Max.

Viz také

Platí pro

Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>)

Vyvolá transformační funkci pro každý prvek sekvence a vrátí maximální hodnotu s možnou Single hodnotou null.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static Nullable<float> Max(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, Nullable<float>> ^ selector);
public static float? Max<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,float?> selector);
static member Max : seq<'Source> * Func<'Source, Nullable<single>> -> Nullable<single>
<Extension()>
Public Function Max(Of TSource) (source As IEnumerable(Of TSource), selector As Func(Of TSource, Nullable(Of Single))) As Nullable(Of Single)

Parametry typu

TSource

Typ prvků objektu source.

Parametry

source
IEnumerable<TSource>

Posloupnost hodnot pro určení maximální hodnoty.

selector
Func<TSource,Nullable<Single>>

Transformační funkce, která se použije u každého prvku.

Návraty

Hodnota typu Nullable<Single> v jazyce C# nebo Nullable(Of Single) Visual Basic, která odpovídá maximální hodnotě v sekvenci.

Výjimky

source nebo selector je null.

Příklady

Následující příklad kódu ukazuje, jak použít Max<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) k určení maximální hodnoty v posloupnosti projektovaných hodnot.

Poznámka

Tento příklad kódu používá přetížení metody, které se liší od konkrétního přetížení popsaného v tomto článku. Pokud chcete příklad rozšířit na přetížení popsané v tomto článku, změňte tělo selector funkce.

class Pet
{
    public string Name { get; set; }
    public int Age { get; set; }
}

public static void MaxEx4()
{
    Pet[] pets = { new Pet { Name="Barley", Age=8 },
                   new Pet { Name="Boots", Age=4 },
                   new Pet { Name="Whiskers", Age=1 } };

    int max = pets.Max(pet => pet.Age + pet.Name.Length);

    Console.WriteLine(
        "The maximum pet age plus name length is {0}.",
        max);
}

/*
 This code produces the following output:

 The maximum pet age plus name length is 14.
*/
Structure Pet
    Public Name As String
    Public Age As Integer
End Structure

Sub MaxEx4()
    ' Create an array of Pet objects.
    Dim pets() As Pet = {New Pet With {.Name = "Barley", .Age = 8},
                     New Pet With {.Name = "Boots", .Age = 4},
                     New Pet With {.Name = "Whiskers", .Age = 1}}

    ' Determine the "maximum" pet by passing a
    ' lambda expression to Max() that sums the pet's age
    ' and name length.
    Dim max As Integer = pets.Max(Function(pet) _
                                  pet.Age + pet.Name.Length)

    ' Display the result.
    Console.WriteLine($"The maximum pet age plus name length is {max}")
End Sub

' This code produces the following output:
'
' The maximum pet age plus name length is 14

Poznámky

Metoda Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>) používá implementaci Single k IComparable<T> porovnání hodnot.

Tuto metodu můžete použít na sekvenci libovolných hodnot, pokud zadáte funkci , selectorkterá promítá členy do číselného source typu, konkrétně Nullable<Single> v jazyce C# nebo Nullable(Of Single) Visual Basic.

V syntaxi výrazu dotazu jazyka Visual Basic se Aggregate Into Max() klauzule překládá na vyvolání Max.

Viz také

Platí pro

Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>)

Vyvolá transformační funkci pro každý prvek sekvence a vrátí maximální hodnotu s možnou Int64 hodnotou null.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static Nullable<long> Max(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, Nullable<long>> ^ selector);
public static long? Max<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,long?> selector);
static member Max : seq<'Source> * Func<'Source, Nullable<int64>> -> Nullable<int64>
<Extension()>
Public Function Max(Of TSource) (source As IEnumerable(Of TSource), selector As Func(Of TSource, Nullable(Of Long))) As Nullable(Of Long)

Parametry typu

TSource

Typ prvků objektu source.

Parametry

source
IEnumerable<TSource>

Posloupnost hodnot pro určení maximální hodnoty.

selector
Func<TSource,Nullable<Int64>>

Transformační funkce, která se použije u každého prvku.

Návraty

Hodnota typu Nullable<Int64> v jazyce C# nebo Nullable(Of Int64) Visual Basic, která odpovídá maximální hodnotě v sekvenci.

Výjimky

source nebo selector je null.

Příklady

Následující příklad kódu ukazuje, jak použít Max<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) k určení maximální hodnoty v posloupnosti projektovaných hodnot.

Poznámka

Tento příklad kódu používá přetížení metody, které se liší od konkrétního přetížení popsaného v tomto článku. Pokud chcete příklad rozšířit na přetížení popsané v tomto článku, změňte tělo selector funkce.

class Pet
{
    public string Name { get; set; }
    public int Age { get; set; }
}

public static void MaxEx4()
{
    Pet[] pets = { new Pet { Name="Barley", Age=8 },
                   new Pet { Name="Boots", Age=4 },
                   new Pet { Name="Whiskers", Age=1 } };

    int max = pets.Max(pet => pet.Age + pet.Name.Length);

    Console.WriteLine(
        "The maximum pet age plus name length is {0}.",
        max);
}

/*
 This code produces the following output:

 The maximum pet age plus name length is 14.
*/
Structure Pet
    Public Name As String
    Public Age As Integer
End Structure

Sub MaxEx4()
    ' Create an array of Pet objects.
    Dim pets() As Pet = {New Pet With {.Name = "Barley", .Age = 8},
                     New Pet With {.Name = "Boots", .Age = 4},
                     New Pet With {.Name = "Whiskers", .Age = 1}}

    ' Determine the "maximum" pet by passing a
    ' lambda expression to Max() that sums the pet's age
    ' and name length.
    Dim max As Integer = pets.Max(Function(pet) _
                                  pet.Age + pet.Name.Length)

    ' Display the result.
    Console.WriteLine($"The maximum pet age plus name length is {max}")
End Sub

' This code produces the following output:
'
' The maximum pet age plus name length is 14

Poznámky

Metoda Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>) používá implementaci Int64 k IComparable<T> porovnání hodnot.

Tuto metodu můžete použít na sekvenci libovolných hodnot, pokud zadáte funkci , selectorkterá promítá členy do číselného source typu, konkrétně Nullable<Int64> v jazyce C# nebo Nullable(Of Int64) Visual Basic.

V syntaxi výrazu dotazu jazyka Visual Basic se Aggregate Into Max() klauzule překládá na vyvolání Max.

Viz také

Platí pro

Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>)

Vyvolá transformační funkci pro každý prvek sekvence a vrátí maximální hodnotu s možnou Int32 hodnotou null.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static Nullable<int> Max(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, Nullable<int>> ^ selector);
public static int? Max<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,int?> selector);
static member Max : seq<'Source> * Func<'Source, Nullable<int>> -> Nullable<int>
<Extension()>
Public Function Max(Of TSource) (source As IEnumerable(Of TSource), selector As Func(Of TSource, Nullable(Of Integer))) As Nullable(Of Integer)

Parametry typu

TSource

Typ elementů .source

Parametry

source
IEnumerable<TSource>

Posloupnost hodnot pro určení maximální hodnoty.

selector
Func<TSource,Nullable<Int32>>

Transformační funkce, která se použije u každého prvku.

Návraty

Hodnota typu Nullable<Int32> v jazyce C# nebo Nullable(Of Int32) Visual Basic, která odpovídá maximální hodnotě v sekvenci.

Výjimky

source nebo selector je null.

Příklady

Následující příklad kódu ukazuje, jak použít Max<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) k určení maximální hodnoty v posloupnosti projektovaných hodnot.

Poznámka

Tento příklad kódu používá přetížení metody, které se liší od konkrétního přetížení popsaného v tomto článku. Pokud chcete příklad rozšířit na přetížení popsané v tomto článku, změňte tělo selector funkce.

class Pet
{
    public string Name { get; set; }
    public int Age { get; set; }
}

public static void MaxEx4()
{
    Pet[] pets = { new Pet { Name="Barley", Age=8 },
                   new Pet { Name="Boots", Age=4 },
                   new Pet { Name="Whiskers", Age=1 } };

    int max = pets.Max(pet => pet.Age + pet.Name.Length);

    Console.WriteLine(
        "The maximum pet age plus name length is {0}.",
        max);
}

/*
 This code produces the following output:

 The maximum pet age plus name length is 14.
*/
Structure Pet
    Public Name As String
    Public Age As Integer
End Structure

Sub MaxEx4()
    ' Create an array of Pet objects.
    Dim pets() As Pet = {New Pet With {.Name = "Barley", .Age = 8},
                     New Pet With {.Name = "Boots", .Age = 4},
                     New Pet With {.Name = "Whiskers", .Age = 1}}

    ' Determine the "maximum" pet by passing a
    ' lambda expression to Max() that sums the pet's age
    ' and name length.
    Dim max As Integer = pets.Max(Function(pet) _
                                  pet.Age + pet.Name.Length)

    ' Display the result.
    Console.WriteLine($"The maximum pet age plus name length is {max}")
End Sub

' This code produces the following output:
'
' The maximum pet age plus name length is 14

Poznámky

Metoda Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>) používá implementaci Int32 k IComparable<T> porovnání hodnot.

Tuto metodu můžete použít na sekvenci libovolných hodnot, pokud zadáte funkci , selectorkterá promítá členy do číselného source typu, konkrétně Nullable<Int32> v jazyce C# nebo Nullable(Of Int32) Visual Basic.

V syntaxi výrazu dotazu jazyka Visual Basic se Aggregate Into Max() klauzule překládá na vyvolání Max.

Viz také

Platí pro

Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>)

Vyvolá transformační funkci pro každý prvek sekvence a vrátí maximální hodnotu s možnou Decimal hodnotou null.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static Nullable<System::Decimal> Max(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, Nullable<System::Decimal>> ^ selector);
public static decimal? Max<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,decimal?> selector);
static member Max : seq<'Source> * Func<'Source, Nullable<decimal>> -> Nullable<decimal>
<Extension()>
Public Function Max(Of TSource) (source As IEnumerable(Of TSource), selector As Func(Of TSource, Nullable(Of Decimal))) As Nullable(Of Decimal)

Parametry typu

TSource

Typ elementů .source

Parametry

source
IEnumerable<TSource>

Posloupnost hodnot pro určení maximální hodnoty.

selector
Func<TSource,Nullable<Decimal>>

Transformační funkce, která se má použít pro každý prvek.

Návraty

Hodnota typu Nullable<Decimal> v jazyce C# nebo Nullable(Of Decimal) Visual Basic, která odpovídá maximální hodnotě v sekvenci.

Výjimky

source nebo selector je null.

Příklady

Následující příklad kódu ukazuje, jak použít Max<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) k určení maximální hodnoty v posloupnosti projektovaných hodnot.

Poznámka

Tento příklad kódu používá přetížení metody, které se liší od konkrétního přetížení popsaného v tomto článku. Pokud chcete příklad rozšířit na přetížení popsané v tomto článku, změňte tělo selector funkce.

class Pet
{
    public string Name { get; set; }
    public int Age { get; set; }
}

public static void MaxEx4()
{
    Pet[] pets = { new Pet { Name="Barley", Age=8 },
                   new Pet { Name="Boots", Age=4 },
                   new Pet { Name="Whiskers", Age=1 } };

    int max = pets.Max(pet => pet.Age + pet.Name.Length);

    Console.WriteLine(
        "The maximum pet age plus name length is {0}.",
        max);
}

/*
 This code produces the following output:

 The maximum pet age plus name length is 14.
*/
Structure Pet
    Public Name As String
    Public Age As Integer
End Structure

Sub MaxEx4()
    ' Create an array of Pet objects.
    Dim pets() As Pet = {New Pet With {.Name = "Barley", .Age = 8},
                     New Pet With {.Name = "Boots", .Age = 4},
                     New Pet With {.Name = "Whiskers", .Age = 1}}

    ' Determine the "maximum" pet by passing a
    ' lambda expression to Max() that sums the pet's age
    ' and name length.
    Dim max As Integer = pets.Max(Function(pet) _
                                  pet.Age + pet.Name.Length)

    ' Display the result.
    Console.WriteLine($"The maximum pet age plus name length is {max}")
End Sub

' This code produces the following output:
'
' The maximum pet age plus name length is 14

Poznámky

Metoda Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>) používá implementaci Decimal k IComparable<T> porovnání hodnot.

Tuto metodu můžete použít na sekvenci libovolných hodnot, pokud zadáte funkci , selectorkterá promítá členy do číselného source typu, konkrétně Nullable<Decimal> v jazyce C# nebo Nullable(Of Decimal) v jazyce Visual Basic.

V syntaxi výrazu dotazu jazyka Visual Basic se Aggregate Into Max() klauzule překládá na vyvolání výrazu Max.

Viz také

Platí pro

Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>)

Vyvolá transformační funkci pro každý prvek sekvence a vrátí maximální hodnotu s možnou Double hodnotou null.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static Nullable<double> Max(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, Nullable<double>> ^ selector);
public static double? Max<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,double?> selector);
static member Max : seq<'Source> * Func<'Source, Nullable<double>> -> Nullable<double>
<Extension()>
Public Function Max(Of TSource) (source As IEnumerable(Of TSource), selector As Func(Of TSource, Nullable(Of Double))) As Nullable(Of Double)

Parametry typu

TSource

Typ elementů .source

Parametry

source
IEnumerable<TSource>

Posloupnost hodnot pro určení maximální hodnoty.

selector
Func<TSource,Nullable<Double>>

Transformační funkce, která se má použít pro každý prvek.

Návraty

Hodnota typu Nullable<Double> v jazyce C# nebo Nullable(Of Double) Visual Basic, která odpovídá maximální hodnotě v sekvenci.

Výjimky

source nebo selector je null.

Příklady

Následující příklad kódu ukazuje, jak použít Max<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) k určení maximální hodnoty v posloupnosti projektovaných hodnot.

Poznámka

Tento příklad kódu používá přetížení metody, které se liší od konkrétního přetížení popsaného v tomto článku. Pokud chcete příklad rozšířit na přetížení popsané v tomto článku, změňte tělo selector funkce.

class Pet
{
    public string Name { get; set; }
    public int Age { get; set; }
}

public static void MaxEx4()
{
    Pet[] pets = { new Pet { Name="Barley", Age=8 },
                   new Pet { Name="Boots", Age=4 },
                   new Pet { Name="Whiskers", Age=1 } };

    int max = pets.Max(pet => pet.Age + pet.Name.Length);

    Console.WriteLine(
        "The maximum pet age plus name length is {0}.",
        max);
}

/*
 This code produces the following output:

 The maximum pet age plus name length is 14.
*/
Structure Pet
    Public Name As String
    Public Age As Integer
End Structure

Sub MaxEx4()
    ' Create an array of Pet objects.
    Dim pets() As Pet = {New Pet With {.Name = "Barley", .Age = 8},
                     New Pet With {.Name = "Boots", .Age = 4},
                     New Pet With {.Name = "Whiskers", .Age = 1}}

    ' Determine the "maximum" pet by passing a
    ' lambda expression to Max() that sums the pet's age
    ' and name length.
    Dim max As Integer = pets.Max(Function(pet) _
                                  pet.Age + pet.Name.Length)

    ' Display the result.
    Console.WriteLine($"The maximum pet age plus name length is {max}")
End Sub

' This code produces the following output:
'
' The maximum pet age plus name length is 14

Poznámky

Metoda Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>) používá implementaci Double k IComparable<T> porovnání hodnot.

Tuto metodu můžete použít na sekvenci libovolných hodnot, pokud zadáte funkci , selectorkterá promítá členy do číselného source typu, konkrétně Nullable<Double> v jazyce C# nebo Nullable(Of Double) v jazyce Visual Basic.

V syntaxi výrazu dotazu jazyka Visual Basic se Aggregate Into Max() klauzule překládá na vyvolání výrazu Max.

Viz také

Platí pro

Max<TSource>(IEnumerable<TSource>, Func<TSource,Int32>)

Vyvolá transformační funkci pro každý prvek sekvence a vrátí maximální Int32 hodnotu.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static int Max(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, int> ^ selector);
public static int Max<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,int> selector);
static member Max : seq<'Source> * Func<'Source, int> -> int
<Extension()>
Public Function Max(Of TSource) (source As IEnumerable(Of TSource), selector As Func(Of TSource, Integer)) As Integer

Parametry typu

TSource

Typ elementů .source

Parametry

source
IEnumerable<TSource>

Posloupnost hodnot pro určení maximální hodnoty.

selector
Func<TSource,Int32>

Transformační funkce, která se má použít pro každý prvek.

Návraty

Maximální hodnota v sekvenci

Výjimky

source nebo selector je null.

source neobsahuje žádné prvky.

Příklady

Následující příklad kódu ukazuje, jak použít Max<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) k určení maximální hodnoty v posloupnosti projektovaných hodnot.

class Pet
{
    public string Name { get; set; }
    public int Age { get; set; }
}

public static void MaxEx4()
{
    Pet[] pets = { new Pet { Name="Barley", Age=8 },
                   new Pet { Name="Boots", Age=4 },
                   new Pet { Name="Whiskers", Age=1 } };

    int max = pets.Max(pet => pet.Age + pet.Name.Length);

    Console.WriteLine(
        "The maximum pet age plus name length is {0}.",
        max);
}

/*
 This code produces the following output:

 The maximum pet age plus name length is 14.
*/
Structure Pet
    Public Name As String
    Public Age As Integer
End Structure

Sub MaxEx4()
    ' Create an array of Pet objects.
    Dim pets() As Pet = {New Pet With {.Name = "Barley", .Age = 8},
                     New Pet With {.Name = "Boots", .Age = 4},
                     New Pet With {.Name = "Whiskers", .Age = 1}}

    ' Determine the "maximum" pet by passing a
    ' lambda expression to Max() that sums the pet's age
    ' and name length.
    Dim max As Integer = pets.Max(Function(pet) _
                                  pet.Age + pet.Name.Length)

    ' Display the result.
    Console.WriteLine($"The maximum pet age plus name length is {max}")
End Sub

' This code produces the following output:
'
' The maximum pet age plus name length is 14

Poznámky

Metoda Max<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) používá implementaci Int32 k IComparable<T> porovnání hodnot.

Tuto metodu můžete použít na sekvenci libovolných hodnot, pokud zadáte funkci , selectorkterá promítá členy do číselného source typu, konkrétně Int32.

V syntaxi výrazu dotazu jazyka Visual Basic se Aggregate Into Max() klauzule překládá na vyvolání výrazu Max.

Viz také

Platí pro

Max<TSource>(IEnumerable<TSource>, Func<TSource,Double>)

Vyvolá transformační funkci pro každý prvek sekvence a vrátí maximální Double hodnotu.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static double Max(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, double> ^ selector);
public static double Max<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,double> selector);
static member Max : seq<'Source> * Func<'Source, double> -> double
<Extension()>
Public Function Max(Of TSource) (source As IEnumerable(Of TSource), selector As Func(Of TSource, Double)) As Double

Parametry typu

TSource

Typ elementů .source

Parametry

source
IEnumerable<TSource>

Posloupnost hodnot pro určení maximální hodnoty.

selector
Func<TSource,Double>

Transformační funkce, která se má použít pro každý prvek.

Návraty

Maximální hodnota v sekvenci

Výjimky

source nebo selector je null.

source neobsahuje žádné prvky.

Příklady

Následující příklad kódu ukazuje, jak použít Max<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) k určení maximální hodnoty v posloupnosti projektovaných hodnot.

Poznámka

Tento příklad kódu používá přetížení metody, které se liší od konkrétního přetížení popsaného v tomto článku. Pokud chcete příklad rozšířit na přetížení popsané v tomto článku, změňte tělo selector funkce.

class Pet
{
    public string Name { get; set; }
    public int Age { get; set; }
}

public static void MaxEx4()
{
    Pet[] pets = { new Pet { Name="Barley", Age=8 },
                   new Pet { Name="Boots", Age=4 },
                   new Pet { Name="Whiskers", Age=1 } };

    int max = pets.Max(pet => pet.Age + pet.Name.Length);

    Console.WriteLine(
        "The maximum pet age plus name length is {0}.",
        max);
}

/*
 This code produces the following output:

 The maximum pet age plus name length is 14.
*/
Structure Pet
    Public Name As String
    Public Age As Integer
End Structure

Sub MaxEx4()
    ' Create an array of Pet objects.
    Dim pets() As Pet = {New Pet With {.Name = "Barley", .Age = 8},
                     New Pet With {.Name = "Boots", .Age = 4},
                     New Pet With {.Name = "Whiskers", .Age = 1}}

    ' Determine the "maximum" pet by passing a
    ' lambda expression to Max() that sums the pet's age
    ' and name length.
    Dim max As Integer = pets.Max(Function(pet) _
                                  pet.Age + pet.Name.Length)

    ' Display the result.
    Console.WriteLine($"The maximum pet age plus name length is {max}")
End Sub

' This code produces the following output:
'
' The maximum pet age plus name length is 14

Poznámky

Metoda Max<TSource>(IEnumerable<TSource>, Func<TSource,Double>) používá implementaci Double k IComparable<T> porovnání hodnot.

Tuto metodu můžete použít na sekvenci libovolných hodnot, pokud zadáte funkci , selectorkterá promítá členy do číselného source typu, konkrétně Double.

V syntaxi výrazu dotazu jazyka Visual Basic se Aggregate Into Max() klauzule překládá na vyvolání výrazu Max.

Viz také

Platí pro

Max<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>)

Vyvolá transformační funkci pro každý prvek sekvence a vrátí maximální Decimal hodnotu.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static System::Decimal Max(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, System::Decimal> ^ selector);
public static decimal Max<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,decimal> selector);
static member Max : seq<'Source> * Func<'Source, decimal> -> decimal
<Extension()>
Public Function Max(Of TSource) (source As IEnumerable(Of TSource), selector As Func(Of TSource, Decimal)) As Decimal

Parametry typu

TSource

Typ elementů .source

Parametry

source
IEnumerable<TSource>

Posloupnost hodnot pro určení maximální hodnoty.

selector
Func<TSource,Decimal>

Transformační funkce, která se má použít pro každý prvek.

Návraty

Maximální hodnota v sekvenci

Výjimky

source nebo selector je null.

source neobsahuje žádné prvky.

Příklady

Následující příklad kódu ukazuje, jak použít Max<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) k určení maximální hodnoty v posloupnosti projektovaných hodnot.

Poznámka

Tento příklad kódu používá přetížení metody, které se liší od konkrétního přetížení popsaného v tomto článku. Pokud chcete příklad rozšířit na přetížení popsané v tomto článku, změňte tělo selector funkce.

class Pet
{
    public string Name { get; set; }
    public int Age { get; set; }
}

public static void MaxEx4()
{
    Pet[] pets = { new Pet { Name="Barley", Age=8 },
                   new Pet { Name="Boots", Age=4 },
                   new Pet { Name="Whiskers", Age=1 } };

    int max = pets.Max(pet => pet.Age + pet.Name.Length);

    Console.WriteLine(
        "The maximum pet age plus name length is {0}.",
        max);
}

/*
 This code produces the following output:

 The maximum pet age plus name length is 14.
*/
Structure Pet
    Public Name As String
    Public Age As Integer
End Structure

Sub MaxEx4()
    ' Create an array of Pet objects.
    Dim pets() As Pet = {New Pet With {.Name = "Barley", .Age = 8},
                     New Pet With {.Name = "Boots", .Age = 4},
                     New Pet With {.Name = "Whiskers", .Age = 1}}

    ' Determine the "maximum" pet by passing a
    ' lambda expression to Max() that sums the pet's age
    ' and name length.
    Dim max As Integer = pets.Max(Function(pet) _
                                  pet.Age + pet.Name.Length)

    ' Display the result.
    Console.WriteLine($"The maximum pet age plus name length is {max}")
End Sub

' This code produces the following output:
'
' The maximum pet age plus name length is 14

Poznámky

Metoda Max<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>) používá implementaci Decimal k IComparable<T> porovnání hodnot.

Tuto metodu můžete použít na sekvenci libovolných hodnot, pokud zadáte funkci , selectorkterá promítá členy do číselného source typu, konkrétně Decimal.

V syntaxi výrazu dotazu jazyka Visual Basic se Aggregate Into Max() klauzule překládá na vyvolání výrazu Max.

Viz také

Platí pro

Max<TSource>(IEnumerable<TSource>, IComparer<TSource>)

Vrátí maximální hodnotu v obecné sekvenci.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static TSource Max(System::Collections::Generic::IEnumerable<TSource> ^ source, System::Collections::Generic::IComparer<TSource> ^ comparer);
public static TSource? Max<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, System.Collections.Generic.IComparer<TSource>? comparer);
static member Max : seq<'Source> * System.Collections.Generic.IComparer<'Source> -> 'Source
<Extension()>
Public Function Max(Of TSource) (source As IEnumerable(Of TSource), comparer As IComparer(Of TSource)) As TSource

Parametry typu

TSource

Typ elementů .source

Parametry

source
IEnumerable<TSource>

Posloupnost hodnot pro určení maximální hodnoty.

comparer
IComparer<TSource>

Chcete-li IComparer<T> porovnat hodnoty.

Návraty

TSource

Maximální hodnota v sekvenci

Výjimky

source je null.

Žádný objekt v source rozhraní nebo IComparable<T> neimplementujeIComparable.

Poznámky

Pokud typ TSource implementuje IComparable<T>, Max<TSource>(IEnumerable<TSource>) metoda tuto implementaci použije k porovnání hodnot. V opačném případě, pokud typ TSource implementuje IComparable, tato implementace se použije k porovnání hodnot.

Pokud TSource je odkaz typu a zdrojová sekvence je prázdná nebo obsahuje pouze hodnoty, které jsou null, vrátí nulltato metoda .

V syntaxi výrazu dotazu jazyka Visual Basic se Aggregate Into Max() klauzule překládá na vyvolání výrazu Max.

Platí pro

Max<TSource>(IEnumerable<TSource>)

Vrátí maximální hodnotu v obecné sekvenci.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static TSource Max(System::Collections::Generic::IEnumerable<TSource> ^ source);
public static TSource Max<TSource> (this System.Collections.Generic.IEnumerable<TSource> source);
public static TSource? Max<TSource> (this System.Collections.Generic.IEnumerable<TSource> source);
static member Max : seq<'Source> -> 'Source
<Extension()>
Public Function Max(Of TSource) (source As IEnumerable(Of TSource)) As TSource

Parametry typu

TSource

Typ elementů .source

Parametry

source
IEnumerable<TSource>

Posloupnost hodnot pro určení maximální hodnoty.

Návraty

TSource

Maximální hodnota v sekvenci

Výjimky

source je null.

Žádný objekt v source rozhraní nebo IComparable<T> neimplementujeIComparable.

Příklady

Následující příklad kódu ukazuje, jak použít Max<TSource>(IEnumerable<TSource>) k určení maximální hodnoty v posloupnosti IComparable<T> objektů.

/// <summary>
/// This class implements IComparable to be able to
/// compare one Pet to another Pet.
/// </summary>
class Pet : IComparable<Pet>
{
    public string Name { get; set; }
    public int Age { get; set; }

    /// <summary>
    /// Compares this Pet to another Pet by
    /// summing each Pet's age and name length.
    /// </summary>
    /// <param name="other">The Pet to compare this Pet to.</param>
    /// <returns>-1 if this Pet is 'less' than the other Pet,
    /// 0 if they are equal,
    /// or 1 if this Pet is 'greater' than the other Pet.</returns>
    int IComparable<Pet>.CompareTo(Pet other)
    {
        int sumOther = other.Age + other.Name.Length;
        int sumThis = this.Age + this.Name.Length;

        if (sumOther > sumThis)
            return -1;
        else if (sumOther == sumThis)
            return 0;
        else
            return 1;
    }
}

public static void MaxEx3()
{
    Pet[] pets = { new Pet { Name="Barley", Age=8 },
                   new Pet { Name="Boots", Age=4 },
                   new Pet { Name="Whiskers", Age=1 } };

    Pet max = pets.Max();

    Console.WriteLine(
        "The 'maximum' animal is {0}.",
        max.Name);
}

/*
 This code produces the following output:

 The 'maximum' animal is Barley.
*/
' This class implements IComparable
' and has a custom 'CompareTo' implementation.
Class Pet
    Implements IComparable(Of Pet)

    Public Name As String
    Public Age As Integer

    ''' <summary>
    ''' Compares Pet objects by the sum of their age and name length.
    ''' </summary>
    ''' <param name="other">The Pet to compare this Pet to.</param>
    ''' <returns>-1 if this Pet's sum is 'less' than the other Pet,
    ''' 0 if they are equal,
    ''' or 1 if this Pet's sum is 'greater' than the other Pet.</returns>
    Function CompareTo(ByVal other As Pet) As Integer _
    Implements IComparable(Of Pet).CompareTo

        If (other.Age + other.Name.Length > Me.Age + Me.Name.Length) Then
            Return -1
        ElseIf (other.Age + other.Name.Length = Me.Age + Me.Name.Length) Then
            Return 0
        Else
            Return 1
        End If
    End Function
End Class

Sub MaxEx3()
    ' Create an array of Pet objects.
    Dim pets() As Pet = {New Pet With {.Name = "Barley", .Age = 8},
                     New Pet With {.Name = "Boots", .Age = 4},
                     New Pet With {.Name = "Whiskers", .Age = 1}}

    ' Find the "maximum" pet according to the
    ' custom CompareTo() implementation.
    Dim max As Pet = pets.Max()

    ' Display the result.
    Console.WriteLine($"The 'maximum' animal is {max.Name}")
End Sub

' This code produces the following output:
'
' The 'maximum' animal is Barley

Poznámky

Pokud typ TSource implementuje IComparable<T>, Max<TSource>(IEnumerable<TSource>) metoda tuto implementaci použije k porovnání hodnot. V opačném případě, pokud typ TSource implementuje IComparable, tato implementace se použije k porovnání hodnot.

Pokud TSource je odkaz typu a zdrojová sekvence je prázdná nebo obsahuje pouze hodnoty, které jsou null, vrátí nulltato metoda .

V syntaxi výrazu dotazu jazyka Visual Basic se Aggregate Into Max() klauzule překládá na vyvolání výrazu Max.

Viz také

Platí pro

Max<TSource>(IEnumerable<TSource>, Func<TSource,Int64>)

Vyvolá transformační funkci pro každý prvek sekvence a vrátí maximální Int64 hodnotu.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static long Max(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, long> ^ selector);
public static long Max<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,long> selector);
static member Max : seq<'Source> * Func<'Source, int64> -> int64
<Extension()>
Public Function Max(Of TSource) (source As IEnumerable(Of TSource), selector As Func(Of TSource, Long)) As Long

Parametry typu

TSource

Typ prvků objektu source.

Parametry

source
IEnumerable<TSource>

Posloupnost hodnot pro určení maximální hodnoty.

selector
Func<TSource,Int64>

Transformační funkce, která se použije u každého prvku.

Návraty

Maximální hodnota v sekvenci

Výjimky

source nebo selector je null.

source neobsahuje žádné prvky.

Příklady

Následující příklad kódu ukazuje, jak použít Max<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) k určení maximální hodnoty v posloupnosti projektovaných hodnot.

Poznámka

Tento příklad kódu používá přetížení metody, které se liší od konkrétního přetížení popsaného v tomto článku. Pokud chcete příklad rozšířit na přetížení popsané v tomto článku, změňte tělo selector funkce.

class Pet
{
    public string Name { get; set; }
    public int Age { get; set; }
}

public static void MaxEx4()
{
    Pet[] pets = { new Pet { Name="Barley", Age=8 },
                   new Pet { Name="Boots", Age=4 },
                   new Pet { Name="Whiskers", Age=1 } };

    int max = pets.Max(pet => pet.Age + pet.Name.Length);

    Console.WriteLine(
        "The maximum pet age plus name length is {0}.",
        max);
}

/*
 This code produces the following output:

 The maximum pet age plus name length is 14.
*/
Structure Pet
    Public Name As String
    Public Age As Integer
End Structure

Sub MaxEx4()
    ' Create an array of Pet objects.
    Dim pets() As Pet = {New Pet With {.Name = "Barley", .Age = 8},
                     New Pet With {.Name = "Boots", .Age = 4},
                     New Pet With {.Name = "Whiskers", .Age = 1}}

    ' Determine the "maximum" pet by passing a
    ' lambda expression to Max() that sums the pet's age
    ' and name length.
    Dim max As Integer = pets.Max(Function(pet) _
                                  pet.Age + pet.Name.Length)

    ' Display the result.
    Console.WriteLine($"The maximum pet age plus name length is {max}")
End Sub

' This code produces the following output:
'
' The maximum pet age plus name length is 14

Poznámky

Metoda Max<TSource>(IEnumerable<TSource>, Func<TSource,Int64>) používá implementaci Int64 k IComparable<T> porovnání hodnot.

Tuto metodu můžete použít na sekvenci libovolných hodnot, pokud zadáte funkci , selectorkterá promítá členy do číselného source typu, konkrétně Int64.

V syntaxi výrazu dotazu jazyka Visual Basic se Aggregate Into Max() klauzule překládá na vyvolání Max.

Viz také

Platí pro