Array.Reverse Method (Array, Int32, Int32)
Reverses the sequence of the elements in a range of elements in the one-dimensional Array.
Namespace: System
Assembly: mscorlib (in mscorlib.dll)
Parameters
- array
- Type: System.Array
The one-dimensional Array to reverse.
- index
- Type: System.Int32
The starting index of the section to reverse.
- length
- Type: System.Int32
The number of elements in the section to reverse.
| Exception | Condition |
|---|---|
| ArgumentNullException | array is null. |
| RankException | array is multidimensional. |
| ArgumentOutOfRangeException | index is less than the lower bound of array. -or- length is less than zero. |
| ArgumentException | index and length do not specify a valid range in array. |
After a call to this method, the element at myArray[i], where i is any index in the array, moves to myArray[j], where j equals (myArray.Length + myArray.GetLowerBound(0)) - (i - myArray.GetLowerBound(0)) - 1.
The Reverse method can be used to reverse a jagged array.
This method is an O(n) operation, where n is length.
The following code example shows how to reverse the sort of the values in a range of elements in an Array.
using System; public class SamplesArray { public static void Main() { // Creates and initializes a new Array. Array myArray=Array.CreateInstance( typeof(String), 9 ); myArray.SetValue( "The", 0 ); myArray.SetValue( "QUICK", 1 ); myArray.SetValue( "BROWN", 2 ); myArray.SetValue( "FOX", 3 ); myArray.SetValue( "jumps", 4 ); myArray.SetValue( "over", 5 ); myArray.SetValue( "the", 6 ); myArray.SetValue( "lazy", 7 ); myArray.SetValue( "dog", 8 ); // Displays the values of the Array. Console.WriteLine( "The Array initially contains the following values:" ); PrintIndexAndValues( myArray ); // Reverses the sort of the values of the Array. Array.Reverse( myArray, 1, 3 ); // Displays the values of the Array. Console.WriteLine( "After reversing:" ); PrintIndexAndValues( myArray ); } public static void PrintIndexAndValues( Array myArray ) { for ( int i = myArray.GetLowerBound(0); i <= myArray.GetUpperBound(0); i++ ) Console.WriteLine( "\t[{0}]:\t{1}", i, myArray.GetValue( i ) ); } } /* This code produces the following output. The Array initially contains the following values: [0]: The [1]: QUICK [2]: BROWN [3]: FOX [4]: jumps [5]: over [6]: the [7]: lazy [8]: dog After reversing: [0]: The [1]: FOX [2]: BROWN [3]: QUICK [4]: jumps [5]: over [6]: the [7]: lazy [8]: dog */
Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.