Sort and search an array of objects : Array « Collections Data Structure « C# / C Sharp






Sort and search an array of objects

Sort and search an array of objects
  
/*
C#: The Complete Reference 
by Herbert Schildt 

Publisher: Osborne/McGraw-Hill (March 8, 2002)
ISBN: 0072134852
*/

// Sort and search an array of objects. 
 
using System;  
 
class MyClass : IComparable { 
  public int i; 
  
  public MyClass(int x) { i = x; } 
 
  // Implement IComparable. 
  public int CompareTo(object v) { 
    return i - ((MyClass)v).i; 
  } 
} 
  
public class SortDemo1 {     
  public static void Main() {     
    MyClass[] nums = new MyClass[5]; 
 
    nums[0] = new MyClass(5); 
    nums[1] = new MyClass(2); 
    nums[2] = new MyClass(3); 
    nums[3] = new MyClass(4); 
    nums[4] = new MyClass(1); 
   
    // Display original order. 
    Console.Write("Original order: "); 
    foreach(MyClass o in nums)  
      Console.Write(o.i + " "); 
    Console.WriteLine(); 
 
    // Sort the array. 
    Array.Sort(nums); 
 
    // Display sorted order. 
    Console.Write("Sorted order:   "); 
    foreach(MyClass o in nums)  
      Console.Write(o.i + " "); 
    Console.WriteLine(); 
 
    // Search for MyClass(2). 
    MyClass x = new MyClass(2); 
    int idx = Array.BinarySearch(nums, x); 
 
    Console.WriteLine("Index of MyClass(2) is " + idx); 
  }     
}


           
         
    
  








Related examples in the same category

1.Demonstrate a one-dimensional arrayDemonstrate a one-dimensional array
2.Declare all kinds of arrays
3.Compute the average of a set of valuesCompute the average of a set of values
4.Enumerates an array using an enumerator object
5.Compute the average of a set of values 2Compute the average of a set of values 2
6.Demonstrate an array overrun
7.Assigning array reference variablesAssigning array reference variables
8.Use the Length array propertyUse the Length array property
9.Reverse an array 2Reverse an array 2
10.illustrates how to use arrays 2illustrates how to use arrays 2
11.illustrates an attempt to write to a nonexistent array elementillustrates an attempt to write to a nonexistent array element
12.illustrates how to initialize arraysillustrates how to initialize arrays
13.illustrates how to use array properties and methodsillustrates how to use array properties and methods
14.illustrates the use of an array of objectsillustrates the use of an array of objects
15.Uses the Array.Copy() method to copy part of an array ints into a secton of an array of doublesUses the Array.Copy() method to copy part of an array ints into a secton of an array of doubles
16.Creates and implements an instance of ArrayCreates and implements an instance of Array
17.Stores a sequence of temperatures in an arrayStores a sequence of temperatures in an array
18.Creates an and array and looks for the index of a given value from either endCreates an and array and looks for the index of a given value from either end
19.Sums the values in an array using a foreach loop 1Sums the values in an array using a foreach loop 1
20.Uses the Array.Copy() method to copy an array of ints into an array of doubles 2Uses the Array.Copy() method to copy an array of ints into an array of doubles 2
21.Class array init
22.Class arrayClass array
23.Multi Dimensional ArraysMulti Dimensional Arrays
24.Jagged Array DemoJagged Array Demo
25.Array reverse and sortArray reverse and sort
26.Use object to create a generic arrayUse object to create a generic array
27.Sort an array and search for a valueSort an array and search for a value
28.Reverse an arrayReverse an array
29.Copy an arrayCopy an array
30.Array ConversionsArray Conversions
31.Arrays of Reference Types
32.System.Array Type:ReverseSystem.Array Type:Reverse
33.Array.Sort by CultureInfo
34.A run-time error occurs when Array.Sort is called: XClass does not implement the IComparable interface.
35.Array.SyncRoot Property: synchronize access to an array.
36.Array.Resize Method
37.Array.FindAll Method: This is the syntax of the Predicate delegate:delegate bool Predicate(T obj)
38.Array.CreateInstance Method
39.Array.Clone Method
40.Array.AsReadOnly Method
41.Dynamic Array