(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.FirstOrDefault<TSource>-Methode (IEnumerable<TSource>, Func<TSource, Boolean>)

Gibt das erste Element der Sequenz zurück, das eine Bedingung erfüllt, oder einen Standardwert, wenn ein solches Element nicht gefunden wird.

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

public static TSource FirstOrDefault<TSource>(
	this IEnumerable<TSource> source,
	Func<TSource, bool> predicate
)

Typparameter

TSource

Der Typ der Elemente von source.

Parameter

source
Typ: System.Collections.Generic.IEnumerable<TSource>
Ein IEnumerable<T>, aus dem ein Element zurückgegeben werden soll.
predicate
Typ: System.Func<TSource, Boolean>
Eine Funktion, mit der jedes Element auf eine Bedingung überprüft wird.

Rückgabewert

Typ: TSource
default (TSource), wenn source leer ist oder wenn kein Element die von predicate angegebene Überprüfung besteht. Andernfalls das erste Element in source, das die von predicate angegebene Überprüfung besteht.

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 predicate ist null.

Der Standardwert für Referenztypen und Typen, die NULL-Werte zulassen, ist null.

Im folgenden Codebeispiel wird die Verwendung von FirstOrDefault<TSource>(IEnumerable<TSource>, Func<TSource, Boolean>) durch Übergeben eines Prädikats veranschaulicht. Im zweiten Aufruf der Methode enthält das Array kein Element, das die Bedingung erfüllt.


            string[] names = { "Hartono, Tommy", "Adams, Terry", 
                                 "Andersen, Henriette Thaulow", 
                                 "Hedlund, Magnus", "Ito, Shu" };

            string firstLongName = names.FirstOrDefault(name => name.Length > 20);

            Console.WriteLine("The first long name is '{0}'.", firstLongName);

            string firstVeryLongName = names.FirstOrDefault(name => name.Length > 30);

            Console.WriteLine(
                "There is {0} name longer than 30 characters.",
                string.IsNullOrEmpty(firstVeryLongName) ? "not a" : "a");

            /*
             This code produces the following output:

             The first long name is 'Andersen, Henriette Thaulow'.
             There is not a name longer than 30 characters.
            */



.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