Condividi tramite


ArrayList.Reverse Metodo

Definizione

Inverte l'ordine degli elementi di ArrayList o di una parte di esso.

Overload

Reverse()

Inverte l'ordine degli elementi nell'intero ArrayList.

Reverse(Int32, Int32)

Inverte l'ordine degli elementi nell'intervallo specificato.

Reverse()

Origine:
ArrayList.cs
Origine:
ArrayList.cs
Origine:
ArrayList.cs

Inverte l'ordine degli elementi nell'intero ArrayList.

public:
 virtual void Reverse();
public virtual void Reverse ();
abstract member Reverse : unit -> unit
override this.Reverse : unit -> unit
Public Overridable Sub Reverse ()

Eccezioni

La classe ArrayList è di sola lettura.

Esempio

Nell'esempio di codice seguente viene illustrato come invertire l'ordine di ordinamento dei valori in un ArrayListoggetto .

using namespace System;
using namespace System::Collections;
void PrintValues( IEnumerable^ myList );
int main()
{
   
   // Creates and initializes a new ArrayList.
   ArrayList^ myAL = gcnew ArrayList;
   myAL->Add( "The" );
   myAL->Add( "quick" );
   myAL->Add( "brown" );
   myAL->Add( "fox" );
   myAL->Add( "jumps" );
   myAL->Add( "over" );
   myAL->Add( "the" );
   myAL->Add( "lazy" );
   myAL->Add( "dog" );
   
   // Displays the values of the ArrayList.
   Console::WriteLine( "The ArrayList initially contains the following values:" );
   PrintValues( myAL );
   
   // Reverses the sort order of the values of the ArrayList.
   myAL->Reverse();
   
   // Displays the values of the ArrayList.
   Console::WriteLine( "After reversing:" );
   PrintValues( myAL );
}

void PrintValues( IEnumerable^ myList )
{
   IEnumerator^ myEnum = myList->GetEnumerator();
   while ( myEnum->MoveNext() )
   {
      Object^ obj = safe_cast<Object^>(myEnum->Current);
      Console::WriteLine( "   {0}", obj );
   }

   Console::WriteLine();
}

/* 
 This code produces the following output.
 
 The ArrayList initially contains the following values:
    The
    quick
    brown
    fox
    jumps
    over
    the
    lazy
    dog

 After reversing:
    dog
    lazy
    the
    over
    jumps
    fox
    brown
    quick
    The
 */
using System;
using System.Collections;
public class SamplesArrayList  {

   public static void Main()  {

      // Creates and initializes a new ArrayList.
      ArrayList myAL = new ArrayList();
      myAL.Add( "The" );
      myAL.Add( "quick" );
      myAL.Add( "brown" );
      myAL.Add( "fox" );
      myAL.Add( "jumps" );
      myAL.Add( "over" );
      myAL.Add( "the" );
      myAL.Add( "lazy" );
      myAL.Add( "dog" );

      // Displays the values of the ArrayList.
      Console.WriteLine( "The ArrayList initially contains the following values:" );
      PrintValues( myAL );

      // Reverses the sort order of the values of the ArrayList.
      myAL.Reverse();

      // Displays the values of the ArrayList.
      Console.WriteLine( "After reversing:" );
      PrintValues( myAL );
   }

   public static void PrintValues( IEnumerable myList )  {
      foreach ( Object obj in myList )
         Console.WriteLine( "   {0}", obj );
      Console.WriteLine();
   }
}


/*
This code produces the following output.

The ArrayList initially contains the following values:
   The
   quick
   brown
   fox
   jumps
   over
   the
   lazy
   dog

After reversing:
   dog
   lazy
   the
   over
   jumps
   fox
   brown
   quick
   The
*/
Imports System.Collections

Public Class SamplesArrayList    
    
    Public Shared Sub Main()
        
        ' Creates and initializes a new ArrayList.
        Dim myAL As New ArrayList()
        myAL.Add("The")
        myAL.Add("quick")
        myAL.Add("brown")
        myAL.Add("fox")
        myAL.Add("jumps")
        myAL.Add("over")
        myAL.Add("the")
        myAL.Add("lazy")
        myAL.Add("dog")
        
        ' Displays the values of the ArrayList.
        Console.WriteLine("The ArrayList initially contains the " _
           + "following values:")
        PrintValues(myAL)
        
        ' Reverses the sort order of the values of the ArrayList.
        myAL.Reverse()
        
        ' Displays the values of the ArrayList.
        Console.WriteLine("After reversing:")
        PrintValues(myAL)
    End Sub
    
    Public Shared Sub PrintValues(myList As IEnumerable)
        Dim obj As [Object]
        For Each obj In  myList
            Console.WriteLine("   {0}", obj)
        Next obj
        Console.WriteLine()
    End Sub

End Class


' This code produces the following output.
' 
' The ArrayList initially contains the following values:
'    The
'    quick
'    brown
'    fox
'    jumps
'    over
'    the
'    lazy
'    dog
'
' After reversing:
'    dog
'    lazy
'    the
'    over
'    jumps
'    fox
'    brown
'    quick
'    The

Commenti

Questo metodo usa Array.Reverse per invertire l'ordine degli elementi, in modo che l'elemento in ArrayList [i], dove i è qualsiasi indice all'interno dell'intervallo, passa a ArrayList [j], dove j equalscountindex + index + - i - 1.

Questo metodo è un'operazione O(n) , dove n è Count.

Si applica a

Reverse(Int32, Int32)

Origine:
ArrayList.cs
Origine:
ArrayList.cs
Origine:
ArrayList.cs

Inverte l'ordine degli elementi nell'intervallo specificato.

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

Parametri

index
Int32

Indice iniziale in base zero dell'intervallo da invertire.

count
Int32

Numero di elementi nell'intervallo da invertire.

Eccezioni

index è minore di zero.

-oppure-

count è minore di zero.

index e count non indicano un intervallo valido di elementi nell'oggetto ArrayList.

La classe ArrayList è di sola lettura.

Esempio

Nell'esempio di codice seguente viene illustrato come invertire l'ordine di ordinamento dei valori in un intervallo di elementi in un ArrayListoggetto .

using namespace System;
using namespace System::Collections;
void PrintValues( IEnumerable^ myList );
int main()
{
   
   // Creates and initializes a new ArrayList.
   ArrayList^ myAL = gcnew ArrayList;
   myAL->Add( "The" );
   myAL->Add( "QUICK" );
   myAL->Add( "BROWN" );
   myAL->Add( "FOX" );
   myAL->Add( "jumps" );
   myAL->Add( "over" );
   myAL->Add( "the" );
   myAL->Add( "lazy" );
   myAL->Add( "dog" );
   
   // Displays the values of the ArrayList.
   Console::WriteLine( "The ArrayList initially contains the following values:" );
   PrintValues( myAL );
   
   // Reverses the sort order of the values of the ArrayList.
   myAL->Reverse( 1, 3 );
   
   // Displays the values of the ArrayList.
   Console::WriteLine( "After reversing:" );
   PrintValues( myAL );
}

void PrintValues( IEnumerable^ myList )
{
   IEnumerator^ myEnum = myList->GetEnumerator();
   while ( myEnum->MoveNext() )
   {
      Object^ obj = safe_cast<Object^>(myEnum->Current);
      Console::WriteLine( "   {0}", obj );
   }

   Console::WriteLine();
}

/* 
 This code produces the following output.
 
 The ArrayList initially contains the following values:
    The
    QUICK
    BROWN
    FOX
    jumps
    over
    the
    lazy
    dog

 After reversing:
    The
    FOX
    BROWN
    QUICK
    jumps
    over
    the
    lazy
    dog

 */
using System;
using System.Collections;
public class SamplesArrayList1  {

   public static void Main()  {

      // Creates and initializes a new ArrayList.
      ArrayList myAL = new ArrayList();
      myAL.Add( "The" );
      myAL.Add( "QUICK" );
      myAL.Add( "BROWN" );
      myAL.Add( "FOX" );
      myAL.Add( "jumps" );
      myAL.Add( "over" );
      myAL.Add( "the" );
      myAL.Add( "lazy" );
      myAL.Add( "dog" );

      // Displays the values of the ArrayList.
      Console.WriteLine( "The ArrayList initially contains the following values:" );
      PrintValues( myAL );

      // Reverses the sort order of the values of the ArrayList.
      myAL.Reverse( 1, 3 );

      // Displays the values of the ArrayList.
      Console.WriteLine( "After reversing:" );
      PrintValues( myAL );
   }

   public static void PrintValues( IEnumerable myList )  {
      foreach ( Object obj in myList )
         Console.WriteLine( "   {0}", obj );
      Console.WriteLine();
   }
}


/*
This code produces the following output.

The ArrayList initially contains the following values:
   The
   QUICK
   BROWN
   FOX
   jumps
   over
   the
   lazy
   dog

After reversing:
   The
   FOX
   BROWN
   QUICK
   jumps
   over
   the
   lazy
   dog

*/
Imports System.Collections

Public Class SamplesArrayList

    Public Shared Sub Main()

        ' Creates and initializes a new ArrayList.
        Dim myAL As New ArrayList()
        myAL.Add("The")
        myAL.Add("QUICK")
        myAL.Add("BROWN")
        myAL.Add("FOX")
        myAL.Add("jumps")
        myAL.Add("over")
        myAL.Add("the")
        myAL.Add("lazy")
        myAL.Add("dog")

        ' Displays the values of the ArrayList.
        Console.WriteLine("The ArrayList initially contains the following values:")
        PrintValues(myAL)

        ' Reverses the sort order of the values of the ArrayList.
        myAL.Reverse(1, 3)

        ' Displays the values of the ArrayList.
        Console.WriteLine("After reversing:")
        PrintValues(myAL)

    End Sub

    Public Shared Sub PrintValues(myList As IEnumerable)
        Dim obj As [Object]
        For Each obj In  myList
            Console.WriteLine("   {0}", obj)
        Next obj
        Console.WriteLine()
    End Sub

End Class


' This code produces the following output.
' 
' The ArrayList initially contains the following values:
'    The
'    QUICK
'    BROWN
'    FOX
'    jumps
'    over
'    the
'    lazy
'    dog
'
' After reversing:
'    The
'    FOX
'    BROWN
'    QUICK
'    jumps
'    over
'    the
'    lazy
'    dog

Commenti

Questo metodo usa Array.Reverse per invertire l'ordine degli elementi, in modo che l'elemento in ArrayList [i], dove i è qualsiasi indice all'interno dell'intervallo, passa a ArrayList [j], dove j equalscountindex + index + - i - 1.

Questo metodo è un'operazione O(n) , dove n è count.

Si applica a