Enumerable.ElementAtOrDefault<TSource> Methode

Definitie

Retourneert het element in een opgegeven index in een reeks of een standaardwaarde als de index buiten het bereik valt.

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

Type parameters

TSource

Het type van de elementen van source.

Parameters

source
IEnumerable<TSource>

Een IEnumerable<T> om een element van te retourneren.

index
Int32

De op nul gebaseerde index van het element dat moet worden opgehaald.

Retouren

TSource

default(TSource) als de index buiten de grenzen van de bronreeks valt; anders is het element op de opgegeven positie in de bronreeks.

Uitzonderingen

source is null.

Voorbeelden

In het volgende codevoorbeeld ziet u hoe u dit kunt gebruiken ElementAtOrDefault. In dit voorbeeld wordt een index gebruikt die zich buiten de grenzen van de matrix bevindt.

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]

Opmerkingen

Als het type source implementatie wordt IList<T>gebruikt om het element op de opgegeven index te verkrijgen. Anders verkrijgt deze methode het opgegeven element.

De standaardwaarde voor verwijzings- en null-typen is null.

Van toepassing op