Enumerable.ElementAt<TSource>(IEnumerable<TSource>, Int32) メソッド


シーケンス内の指定されたインデックス位置にある要素を返します。Returns the element at a specified index in a sequence.

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



source の要素の型。The type of the elements of source.



返される要素が含まれる IEnumerable<T>An IEnumerable<T> to return an element from.


取得する要素の、0 から始まるインデックス。The zero-based index of the element to retrieve.



ソース シーケンス内の指定された位置にある要素。The element at the specified position in the source sequence.


sourcenull です。source is null.

index が 0 未満か source に含まれている要素数以上の値です。index is less than 0 or greater than or equal to the number of elements in source.

次のコード例では、ElementAt を使用して、特定の位置にある要素を返す方法を示します。The following code example demonstrates how to use ElementAt to return an element at a specific position.

string[] names =
    { "Hartono, Tommy", "Adams, Terry", "Andersen, Henriette Thaulow",

        "Hedlund, Magnus", "Ito, Shu" };
Random random = new Random(DateTime.Now.Millisecond);

string name = names.ElementAt(random.Next(0, names.Length));

Console.WriteLine("The name chosen at random is '{0}'.", name);

 This code produces the following sample output:

 The name chosen at random is 'Ito, Shu'.
' Create an array of strings.
Dim names() As String =
{"Hartono, Tommy", "Adams, Terry", "Andersen, Henriette Thaulow", "Hedlund, Magnus", "Ito, Shu"}

Dim random As Random = New Random(DateTime.Now.Millisecond)

' Get a string at a random index within the array.
Dim name As String = names.ElementAt(random.Next(0, names.Length))

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

' This code produces the following output:
' The name chosen at random is Ito, Shu


source の型が IList<T>を実装している場合は、その実装を使用して、指定したインデックス位置にある要素を取得します。If the type of source implements IList<T>, that implementation is used to obtain the element at the specified index. それ以外の場合、このメソッドは指定された要素を取得します。Otherwise, this method obtains the specified element.

index が範囲外の場合、このメソッドは例外をスローします。This method throws an exception if index is out of range. 指定されたインデックスが範囲外の場合に既定値を返すには、ElementAtOrDefault メソッドを使用します。To instead return a default value when the specified index is out of range, use the ElementAtOrDefault method.