Поделиться через


Enumerable.Reverse<TSource>(IEnumerable<TSource>) Метод

Определение

Изменяет порядок элементов последовательности на противоположный.

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

Параметры типа

TSource

Тип элементов source.

Параметры

source
IEnumerable<TSource>

Последовательность значений, которые следует расставить в обратном порядке.

Возвращаемое значение

IEnumerable<TSource>

Последовательность, элементы которой соответствуют элементам входной последовательности, но следуют в противоположном порядке.

Исключения

source имеет значение null.

Примеры

В следующем примере кода показано, как использовать Reverse для изменения порядка элементов в массиве.

char[] apple = { 'a', 'p', 'p', 'l', 'e' };

char[] reversed = apple.Reverse().ToArray();

foreach (char chr in reversed)
{
    Console.Write(chr + " ");
}
Console.WriteLine();

/*
 This code produces the following output:

 e l p p a
*/
' Create a List of Char values.
Dim appleLetters As New List(Of Char)(New Char() _
                                  {"a"c, "P"c, "P"c, "L"c, "E"c})

' Reverse the order of the elements in the list.
' (We have to call AsEnumerable() in order to
' use System.Linq.Enumerable's Reverse() method.
Dim reversed() As Char =
appleLetters.AsEnumerable().Reverse().ToArray()

Dim output As New System.Text.StringBuilder
For Each chr As Char In reversed
    output.Append(chr & " ")
Next

' Display the output.
Console.WriteLine(output.ToString())

' This code produces the following output:
'
' E L P P a

Комментарии

Этот метод реализуется с помощью отложенного выполнения. Немедленно возвращаемое значение — это объект, в котором хранятся все сведения, необходимые для выполнения действия. Запрос, представленный этим методом, не выполняется до тех пор, пока объект не будет перечислен либо путем вызова его GetEnumerator метода напрямую, либо с помощью foreach в C# или For Each в Visual Basic.

В отличие от OrderBy, этот метод сортировки не учитывает сами фактические значения при определении порядка. Вместо этого он просто возвращает элементы в обратном порядке, из которого они создаются базовым источником.

Применяется к