Array.Reverse Method (Array, Int32, Int32)
Microsoft Silverlight will reach end of support after October 2021. Learn more.
Reverses the sequence of the elements in a range of elements in the one-dimensional Array.
Namespace: System
Assembly: mscorlib (in mscorlib.dll)
Syntax
'Declaration
<SecuritySafeCriticalAttribute> _
Public Shared Sub Reverse ( _
array As Array, _
index As Integer, _
length As Integer _
)
[SecuritySafeCriticalAttribute]
public static void Reverse(
Array array,
int index,
int length
)
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.
Exceptions
Exception | Condition |
---|---|
ArgumentNullException | array is nulla null reference (Nothing in Visual Basic). |
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. |
Remarks
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.
This method is an O(n) operation, where n is length.
Examples
The following code example shows how to reverse the sort of the values in a range of elements in an Array.
Note: |
---|
To run this example, see Building Examples That Use a Demo Method and a TextBlock Control. |
Public Class Example
Public Shared Sub Demo(ByVal outputBlock As System.Windows.Controls.TextBlock)
' Creates and initializes a new Array.
Dim myArray As Array = Array.CreateInstance(GetType(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.
outputBlock.Text &= "The Array initially contains the " _
+ "following values:" & vbCrLf
PrintIndexAndValues(outputBlock, myArray)
' Reverses the sort of the values of the Array.
Array.Reverse(myArray, 1, 3)
' Displays the values of the Array.
outputBlock.Text &= "After reversing:" & vbCrLf
PrintIndexAndValues(outputBlock, myArray)
End Sub
Public Shared Sub PrintIndexAndValues(ByVal outputBlock As System.Windows.Controls.TextBlock, ByVal myArray As Array)
Dim i As Integer
For i = myArray.GetLowerBound(0) To myArray.GetUpperBound(0)
outputBlock.Text &= String.Format(ControlChars.Tab + "[{0}]:" + ControlChars.Tab _
+ "{1}", i, myArray.GetValue(i)) & vbCrLf
Next i
End Sub
End Class
' 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
using System;
public class Example
{
public static void Demo(System.Windows.Controls.TextBlock outputBlock)
{
// 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.
outputBlock.Text += "The Array initially contains the following values:" + "\n";
PrintIndexAndValues(outputBlock, myArray);
// Reverses the sort of the values of the Array.
Array.Reverse(myArray, 1, 3);
// Displays the values of the Array.
outputBlock.Text += "After reversing:" + "\n";
PrintIndexAndValues(outputBlock, myArray);
}
public static void PrintIndexAndValues(System.Windows.Controls.TextBlock outputBlock, Array myArray)
{
for (int i = myArray.GetLowerBound(0); i <= myArray.GetUpperBound(0); i++)
outputBlock.Text += String.Format("\t[{0}]:\t{1}", i, myArray.GetValue(i)) + "\n";
}
}
/*
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
*/
Version Information
Silverlight
Supported in: 5, 4, 3
Silverlight for Windows Phone
Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0
XNA Framework
Supported in: Xbox 360, Windows Phone OS 7.0
Platforms
For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.