Enumerable.ElementAtOrDefault<TSource> Methode

Definition

Gibt das Element an einem angegebenen Index in einer Sequenz oder einem Standardwert zurück, wenn der Index außerhalb des Bereichs liegt.

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

Typparameter

TSource

Der Typ der Elemente von source.

Parameter

source
IEnumerable<TSource>

Ein IEnumerable<T> , von dem ein Element zurückgegeben werden soll.

index
Int32

Der nullbasierte Index des abzurufenden Elements.

Gibt zurück

TSource

default(TSource) wenn sich der Index außerhalb der Grenzen der Quellsequenz befindet; andernfalls befindet sich das Element an der angegebenen Position in der Quellsequenz.

Ausnahmen

source ist null.

Beispiele

Im folgenden Codebeispiel wird die Verwendung ElementAtOrDefaultveranschaulicht. In diesem Beispiel wird ein Index verwendet, der sich außerhalb der Grenzen des Arrays befindet.

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

int index = 20;

string name = names.ElementAtOrDefault(index);

Console.WriteLine(
    "The name chosen at index {0} is '{1}'.",
    index,
    String.IsNullOrEmpty(name) ? "<no name at this index>" : name);

/*
 This code produces the following output:

 The name chosen at index 20 is '<no name at this index>'.
*/
' Create an array of strings.
Dim names() As String =
{"Hartono, Tommy", "Adams, Terry", "Andersen, Henriette Thaulow", "Hedlund, Magnus", "Ito, Shu"}

Dim index As Integer = 20

' Get a string at an index that is out of range in the array.
Dim name As String = names.ElementAtOrDefault(index)

Dim text As String = If(String.IsNullOrEmpty(name), "[THERE IS NO NAME AT THIS INDEX]", name)

' Display the output.
Console.WriteLine($"The name chosen at index {index} is {text}")

' This code produces the following output:
'
' The name chosen at index 20 is [THERE IS NO NAME AT THIS INDEX]

Hinweise

Wenn der Typ der source Implementierungen IList<T>verwendet wird, wird diese Implementierung verwendet, um das Element am angegebenen Index abzurufen. Andernfalls ruft diese Methode das angegebene Element ab.

Der Standardwert für Bezugs- und Nullwerte ist null.

Gilt für: