Enumerable.Last 方法

定义

返回序列的最后一个元素。Returns the last element of a sequence.

重载

Last<TSource>(IEnumerable<TSource>)

返回序列的最后一个元素。Returns the last element of a sequence.

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

返回序列中满足指定条件的最后一个元素。Returns the last element of a sequence that satisfies a specified condition.

Last<TSource>(IEnumerable<TSource>)

返回序列的最后一个元素。Returns the last element of a sequence.

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

类型参数

TSource

source 的元素类型。The type of the elements of source.

参数

source
IEnumerable<TSource>

要返回其最后一个元素的 IEnumerable<T>An IEnumerable<T> to return the last element of.

返回

TSource

源序列中最后位置处的值。The value at the last position in the source sequence.

异常

sourcenullsource is null.

源序列为空。The source sequence is empty.

示例

下面的代码示例演示如何使用 Last<TSource>(IEnumerable<TSource>) 返回数组的最后一个元素。The following code example demonstrates how to use Last<TSource>(IEnumerable<TSource>) to return the last element of an array.

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

int last = numbers.Last();

Console.WriteLine(last);

/*
 This code produces the following output:

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

' Get the last item in the array.
Dim last As Integer = numbers.Last()

' Display the result.
MsgBox(last)

' This code produces the following output:
'
' 19

注解

如果 source 不包含任何元素,则 @no__t 的方法将引发异常。The Last<TSource>(IEnumerable<TSource>) method throws an exception if source contains no elements. 若要改为在源序列为空时返回默认值,请使用 LastOrDefault 方法。To instead return a default value when the source sequence is empty, use the LastOrDefault method.

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

返回序列中满足指定条件的最后一个元素。Returns the last element of a sequence that satisfies a specified condition.

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

类型参数

TSource

source 的元素类型。The type of the elements of source.

参数

source
IEnumerable<TSource>

要从中返回元素的 IEnumerable<T>An IEnumerable<T> to return an element from.

predicate
Func<TSource,Boolean>

用于测试每个元素是否满足条件的函数。A function to test each element for a condition.

返回

TSource

序列中通过指定谓词函数中的测试的最后一个元素。The last element in the sequence that passes the test in the specified predicate function.

异常

sourcepredicatenullsource or predicate is null.

元素均不满足 predicate 中的条件。No element satisfies the condition in predicate.

-or- 源序列为空。The source sequence is empty.

示例

下面的代码示例演示如何使用 Last<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) 返回数组中满足条件的最后一个元素。The following code example demonstrates how to use Last<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) to return the last element of an array that satisfies a condition.

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

int last = numbers.Last(num => num > 80);

Console.WriteLine(last);

/*
 This code produces the following output:

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

' Get the last element in the array whose value is
' greater than 80.
Dim last As Integer = numbers.Last(Function(num) num > 80)

' Display the result.
MsgBox(last)

' This code produces the following output:
'
' 87

注解

如果 source 中找不到匹配的元素,则 @no__t 的方法将引发异常。The Last<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) method throws an exception if no matching element is found in source. 如果未找到匹配的元素,则改为返回默认值,请使用 LastOrDefault 方法。To instead return a default value when no matching element is found, use the LastOrDefault method.

适用于