Condividi tramite


Enumerable.Reverse<TSource>(IEnumerable<TSource>) Metodo

Definizione

Inverte l'ordine degli elementi in una sequenza.

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)

Parametri di tipo

TSource

Tipo degli elementi di source.

Parametri

source
IEnumerable<TSource>

Sequenza di valori da invertire.

Restituisce

IEnumerable<TSource>

Sequenza i cui elementi corrispondono a quelli della sequenza di input, in ordine inverso.

Eccezioni

source è null.

Esempio

Nell'esempio di codice seguente viene illustrato come usare Reverse per invertire l'ordine degli elementi in una matrice.

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

Commenti

Questo metodo viene implementato usando l'esecuzione posticipata. Il valore restituito immediato è un oggetto che archivia tutte le informazioni necessarie per eseguire l'azione. La query rappresentata da questo metodo non viene eseguita fino a quando l'oggetto non viene enumerato chiamando direttamente il relativo GetEnumerator metodo o usando foreach in C# o For Each in Visual Basic.

A differenza di OrderBy, questo metodo di ordinamento non considera i valori effettivi stessi per determinare l'ordine. Invece, restituisce solo gli elementi nell'ordine inverso da cui vengono prodotti dall'origine sottostante.

Si applica a