(0) exportieren Drucken
Alle erweitern
Dieser Artikel wurde maschinell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. Weitere Informationen
Übersetzung
Original

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

Ruft für jedes Element einer generischen Sequenz eine Transformationsfunktion auf 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
)

Typparameter

TSource

Der Typ der Elemente von source.

TResult

Der Typ des von selector zurückgegebenen Werts.

Parameter

source
Typ: System.Collections.Generic.IEnumerable<TSource>
Eine Sequenz von Werten, deren Höchstwert bestimmt werden soll.
selector
Typ: System.Func<TSource, TResult>
Eine Transformationsfunktion, die auf jedes Element angewendet werden soll.

Rückgabewert

Typ: TResult
Der Höchstwert in der Sequenz.

Hinweis zur Verwendung

In Visual Basic und C# können Sie diese Methode als Instanzenmethode für ein beliebiges Objekt vom Typ IEnumerable<TSource> aufrufen. Bei Verwendung der Syntax für Instanzenmethoden lassen Sie den ersten Parameter aus. Weitere Informationen finden Sie unter Erweiterungsmethoden (Visual Basic) und Erweiterungsmethoden (C#-Programmierhandbuch).

AusnahmeBedingung
ArgumentNullException

source oder selector ist null.

Wenn IComparable<T> vom Typ TResult implementiert wird, verwendet die Methode diese Implementierung zum Vergleichen von Werten. Wenn hingegen IComparable vom Typ TResult implementiert wird, werden Werte mithilfe dieser Implementierung verglichen.

In der Syntax eines Visual Basic-Abfrageausdrucks wird eine Aggregate Into Max()-Klausel in einen Aufruf von Max übersetzt.

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

HinweisHinweis

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


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



.NET Framework

Unterstützt in: 4.5.2, 4.5.1, 4.5, 4, 3.5

.NET Framework Client Profile

Unterstützt in: 4, 3.5 SP1

Portable Klassenbibliothek

Unterstützt in: Portable Klassenbibliothek

.NET für Windows Store-Apps

Unterstützt in: Windows 8

.NET für Windows Phone-Apps

Unterstützt in: Windows Phone 8, Silverlight 8.1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core-Rolle wird nicht unterstützt), Windows Server 2008 R2 (Server Core-Rolle wird mit SP1 oder höher unterstützt; Itanium wird nicht unterstützt)

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.

Community-Beiträge

HINZUFÜGEN
Anzeigen:
© 2014 Microsoft