Enumerable.ElementAtOrDefault<TSource> Metod

Definition

Returnerar elementet vid ett angivet index i en sekvens eller ett standardvärde om indexet ligger utom intervallet.

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

Typparametrar

TSource

Typen av element sourcei .

Parametrar

source
IEnumerable<TSource>

Ett IEnumerable<T> att returnera ett element från.

index
Int32

Det nollbaserade indexet för elementet som ska hämtas.

Returer

TSource

default(TSource) om indexet ligger utanför källsekvensens gränser, annars elementet vid den angivna positionen i källsekvensen.

Undantag

source är null.

Exempel

I följande kodexempel visas hur du använder ElementAtOrDefault. I det här exemplet används ett index som ligger utanför matrisens gränser.

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]

Kommentarer

Om typen av source implementerar IList<T>används implementeringen för att hämta elementet vid det angivna indexet. Annars hämtar den här metoden det angivna elementet.

Standardvärdet för referenstyper och null-typer är null.

Gäller för