C# Array Sort(Array, Array, Int32, Int32, IComparer)

Description

Array Sort(Array, Array, Int32, Int32, IComparer) sorts a range of elements in a pair of one-dimensional Array objects (one contains the keys and the other contains the corresponding items) based on the keys in the first Array using the specified IComparer.

Syntax

Array.Sort(Array, Array, Int32, Int32, IComparer) has the following syntax.


public static void Sort(
  Array keys,/*from  w ww  .  ja  v  a 2s  .co  m*/
  Array items,
  int index,
  int length,
  IComparer comparer
)

Parameters

Array.Sort(Array, Array, Int32, Int32, IComparer) has the following parameters.

  • keys - The one-dimensional Array that contains the keys to sort.
  • items - The one-dimensional Array that contains the items that correspond to each of the keys in the keys Array.
  • items - -or-
  • items - null to sort only the keys Array.
  • index - The starting index of the range to sort.
  • length - The number of elements in the range to sort.
  • comparer - The IComparer implementation to use when comparing elements. OR null to use the IComparable implementation of each element.

Returns

Array.Sort(Array, Array, Int32, Int32, IComparer) method returns

Example

The following code example shows how to sort the values in an Array using the default comparer and a custom comparer that reverses the sort order.


// w ww  . j  a va 2  s  .co m
using System;
using System.Collections;

class myReverserClass : IComparer  {

      // Calls CaseInsensitiveComparer.Compare with the parameters reversed. 
      int IComparer.Compare( Object x, Object y )  {
          return( (new CaseInsensitiveComparer()).Compare( y, x ) );
      }

}
   
public class SamplesArray  {
   public static void Main()  {

      String[] myArr = { "A", "B", "BROWN", "D", "E", "F", "G", "H", "I" };
      IComparer myComparer = new myReverserClass();

      Array.Sort( myArr, 1, 3 );
      Array.Sort( myArr, 1, 3, myComparer );
      Array.Sort( myArr );
      Array.Sort( myArr, myComparer );
   }
}

The code above generates the following result.





















Home »
  C# Tutorial »
    System »




Array
BitConverter
Boolean
Byte
Char
Console
ConsoleKeyInfo
Convert
DateTime
DateTimeOffset
Decimal
Double
Enum
Environment
Exception
Guid
Int16
Int32
Int64
Math
OperatingSystem
Random
SByte
Single
String
StringComparer
TimeSpan
TimeZone
TimeZoneInfo
Tuple
Tuple
Tuple
Type
UInt16
UInt32
UInt64
Uri
Version