Enumerable.First Method

Definition

Returns the first element of a sequence.

Overloads

First<TSource>(IEnumerable<TSource>)

Returns the first element of a sequence.

First<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>)

Returns the first element in a sequence that satisfies a specified condition.

First<TSource>(IEnumerable<TSource>)

Returns the first element of a sequence.

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

Type Parameters

TSource

The type of the elements of source.

Parameters

source
IEnumerable<TSource>

The IEnumerable<T> to return the first element of.

Returns

TSource

The first element in the specified sequence.

Exceptions

source is null.

The source sequence is empty.

Examples

The following code example demonstrates how to use First<TSource>(IEnumerable<TSource>) to return the first element of an array.

int[] numbers = { 9, 34, 65, 92, 87, 435, 3, 54, 
                    83, 23, 87, 435, 67, 12, 19 };

int first = numbers.First();

Console.WriteLine(first);

/*
 This code produces the following output:

 9
*/
' Create an array of integers.
Dim numbers() As Integer =
{9, 34, 65, 92, 87, 435, 3, 54, 83, 23, 87, 435, 67, 12, 19}

' Select the first element in the array.
Dim first As Integer = numbers.First()

' Display the output.
MsgBox(first)

' This code produces the following output:
'
' 9

Remarks

The First<TSource>(IEnumerable<TSource>) method throws an exception if source contains no elements. To instead return a default value when the source sequence is empty, use the FirstOrDefault method.

First<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>)

Returns the first element in a sequence that satisfies a specified condition.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static TSource First(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, bool> ^ predicate);
public static TSource First<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,bool> predicate);
static member First : seq<'Source> * Func<'Source, bool> -> 'Source
<Extension()>
Public Function First(Of TSource) (source As IEnumerable(Of TSource), predicate As Func(Of TSource, Boolean)) As TSource

Type Parameters

TSource

The type of the elements of source.

Parameters

source
IEnumerable<TSource>

An IEnumerable<T> to return an element from.

predicate
Func<TSource,Boolean>

A function to test each element for a condition.

Returns

TSource

The first element in the sequence that passes the test in the specified predicate function.

Exceptions

source or predicate is null.

No element satisfies the condition in predicate.

-or-

The source sequence is empty.

Examples

The following code example demonstrates how to use First<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) to return the first element of an array that satisfies a condition.

int[] numbers = { 9, 34, 65, 92, 87, 435, 3, 54, 
                    83, 23, 87, 435, 67, 12, 19 };

int first = numbers.First(number => number > 80);

Console.WriteLine(first);

/*
 This code produces the following output:

 92
*/
' Create an array of integers.
Dim numbers() As Integer =
{9, 34, 65, 92, 87, 435, 3, 54, 83, 23, 87, 435, 67, 12, 19}

' Select the first element in the array whose value is greater than 80.
Dim first As Integer = numbers.First(Function(number) number > 80)

' Display the output.
MsgBox(first)

' This code produces the following output:
'
' 92

Remarks

The First<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) method throws an exception if no matching element is found in source. To instead return a default value when no matching element is found, use the FirstOrDefault method.

Applies to