Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

Enumerable.Max<TSource, TResult>-Methode: (IEnumerable<TSource>, Func<TSource, TResult>)

 

Veröffentlicht: Oktober 2016

Ruft eine Transformationsfunktion für jedes Element einer generischen Sequenz und gibt den höchsten Ergebniswert zurück.

Namespace:   System.Linq
Assembly:  System.Core (in System.Core.dll)

public static TResult Max<TSource, TResult>(
	this IEnumerable<TSource> source,
	Func<TSource, TResult> selector
)

Parameter

source
Type: System.Collections.Generic.IEnumerable<TSource>

Eine Sequenz von Werten, deren Höchstwert bestimmt werden soll.

selector
Type: System.Func<TSource, TResult>

Eine Transformationsfunktion, die auf jedes Element angewendet werden soll.

Rückgabewert

Type: TResult

Der Höchstwert in der Sequenz.

Typparameter

TSource

Der Typ der Elemente von source.

TResult

Der Typ des von selector zurückgegebenen Werts.

Exception Condition
ArgumentNullException

source oder selector ist null.

Wenn Typ TResult implementiert IComparable<T>, verwendet die Methode diese Implementierung zum Vergleichen von Werten. Andernfalls gilt: Wenn Typ TResult implementiert IComparable, diese Implementierung verwendet, um Werte zu vergleichen.

In Visual Basic Abfragen Ausdruckssyntax, ein Aggregate Into Max() -Klausel übersetzt in einen Aufruf von Max.

Im folgenden Codebeispiel wird veranschaulicht, wie Sie Max<TSource>(IEnumerable<TSource>, Func<TSource, Int32>) der Höchstwert in einer Sequenz von projizierten Werten bestimmt.

System_CAPS_noteHinweis

Dieses Codebeispiel verwendet eine Überladung dieser überladenen Methode, die von der speziellen Überladung, wie sie in diesem Thema beschrieben wird, abweicht. Ändern Sie den Text der selector-Funktion, um das Beispiel auf dieses Thema zu erweitern.

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.
*/

Universelle Windows-Plattform
Verfügbar seit 8
.NET Framework
Verfügbar seit 3.5
Portierbare Klassenbibliothek
Unterstützt in: portierbare .NET-Plattformen
Silverlight
Verfügbar seit 2.0
Windows Phone Silverlight
Verfügbar seit 7.0
Windows Phone
Verfügbar seit 8.1
Zurück zum Anfang
Anzeigen: