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


List<T>.Reverse Метод

Определение

Изменяет порядок элементов в списке List<T> или в его части на обратный.

Перегрузки

Reverse()

Изменяет порядок элементов во всем списке List<T> на обратный.

Reverse(Int32, Int32)

Изменяет порядок элементов в указанном диапазоне.

Примеры

В следующем примере показаны обе перегрузки Reverse метода . В примере создается List<T> из строк и добавляется шесть строк. Перегрузка Reverse() метода используется для отмены списка, а затем перегрузка Reverse(Int32, Int32) метода используется для изменения середины списка, начиная с элемента 1 и охватывающего четыре элемента.

using namespace System;
using namespace System::Collections::Generic;

void main()
{
    List<String^>^ dinosaurs = gcnew List<String^>();

    dinosaurs->Add("Pachycephalosaurus");
    dinosaurs->Add("Parasauralophus");
    dinosaurs->Add("Mamenchisaurus");
    dinosaurs->Add("Amargasaurus");
    dinosaurs->Add("Coelophysis");
    dinosaurs->Add("Oviraptor");

    Console::WriteLine();
    for each(String^ dinosaur in dinosaurs)
    {
        Console::WriteLine(dinosaur);
    }

    dinosaurs->Reverse();

    Console::WriteLine();
    for each(String^ dinosaur in dinosaurs)
    {
        Console::WriteLine(dinosaur);
    }

    dinosaurs->Reverse(1, 4);

    Console::WriteLine();
    for each(String^ dinosaur in dinosaurs)
    {
        Console::WriteLine(dinosaur);
    }
}

/* This code example produces the following output:

Pachycephalosaurus
Parasauralophus
Mamenchisaurus
Amargasaurus
Coelophysis
Oviraptor

Oviraptor
Coelophysis
Amargasaurus
Mamenchisaurus
Parasauralophus
Pachycephalosaurus

Oviraptor
Parasauralophus
Mamenchisaurus
Amargasaurus
Coelophysis
Pachycephalosaurus
 */
using System;
using System.Collections.Generic;

public class Example
{
    public static void Main()
    {
        List<string> dinosaurs = new List<string>();

        dinosaurs.Add("Pachycephalosaurus");
        dinosaurs.Add("Parasauralophus");
        dinosaurs.Add("Mamenchisaurus");
        dinosaurs.Add("Amargasaurus");
        dinosaurs.Add("Coelophysis");
        dinosaurs.Add("Oviraptor");

        Console.WriteLine();
        foreach(string dinosaur in dinosaurs)
        {
            Console.WriteLine(dinosaur);
        }

        dinosaurs.Reverse();

        Console.WriteLine();
        foreach(string dinosaur in dinosaurs)
        {
            Console.WriteLine(dinosaur);
        }

        dinosaurs.Reverse(1, 4);

        Console.WriteLine();
        foreach(string dinosaur in dinosaurs)
        {
            Console.WriteLine(dinosaur);
        }
    }
}

/* This code example produces the following output:

Pachycephalosaurus
Parasauralophus
Mamenchisaurus
Amargasaurus
Coelophysis
Oviraptor

Oviraptor
Coelophysis
Amargasaurus
Mamenchisaurus
Parasauralophus
Pachycephalosaurus

Oviraptor
Parasauralophus
Mamenchisaurus
Amargasaurus
Coelophysis
Pachycephalosaurus
 */
Imports System.Collections.Generic

Public Class Example

    Public Shared Sub Main()

        Dim dinosaurs As New List(Of String)

        dinosaurs.Add("Pachycephalosaurus")
        dinosaurs.Add("Parasauralophus")
        dinosaurs.Add("Mamenchisaurus")
        dinosaurs.Add("Amargasaurus")
        dinosaurs.Add("Coelophysis")
        dinosaurs.Add("Oviraptor")

        Console.WriteLine()
        For Each dinosaur As String In dinosaurs
            Console.WriteLine(dinosaur)
        Next

        dinosaurs.Reverse()

        Console.WriteLine()
        For Each dinosaur As String In dinosaurs
            Console.WriteLine(dinosaur)
        Next

        dinosaurs.Reverse(1, 4)

        Console.WriteLine()
        For Each dinosaur As String In dinosaurs
            Console.WriteLine(dinosaur)
        Next

    End Sub
End Class

' This code example produces the following output:
'
'Pachycephalosaurus
'Parasauralophus
'Mamenchisaurus
'Amargasaurus
'Coelophysis
'Oviraptor
'
'Oviraptor
'Coelophysis
'Amargasaurus
'Mamenchisaurus
'Parasauralophus
'Pachycephalosaurus
'
'Oviraptor
'Parasauralophus
'Mamenchisaurus
'Amargasaurus
'Coelophysis
'Pachycephalosaurus

Reverse()

Исходный код:
List.cs
Исходный код:
List.cs
Исходный код:
List.cs

Изменяет порядок элементов во всем списке List<T> на обратный.

public:
 void Reverse();
public void Reverse ();
member this.Reverse : unit -> unit
Public Sub Reverse ()

Комментарии

Этот метод использует Array.Reverse для изменения порядка элементов.

Этот метод является операцией O(n), где n — .Count

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

Reverse(Int32, Int32)

Исходный код:
List.cs
Исходный код:
List.cs
Исходный код:
List.cs

Изменяет порядок элементов в указанном диапазоне.

public:
 void Reverse(int index, int count);
public void Reverse (int index, int count);
member this.Reverse : int * int -> unit
Public Sub Reverse (index As Integer, count As Integer)

Параметры

index
Int32

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

count
Int32

Число элементов в диапазоне, порядок сортировки в котором требуется изменить.

Исключения

Значение параметраindex меньше 0.

-или-

Значение параметраcount меньше 0.

Параметры index и count не указывают допустимый диапазон элементов в списке List<T>.

Комментарии

Этот метод использует Array.Reverse для изменения порядка элементов.

Этот метод является операцией O(n), где n — .Count

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