Searching for an equivalent object with Array.BinarySearch (C#) : Array « Collections « ASP.NET Tutorial

Home
ASP.NET Tutorial
1.ASP.Net Instroduction
2.Language Basics
3.ASP.net Controls
4.HTML Controls
5.Page Lifecycle
6.Response
7.Collections
8.Validation
9.Development
10.File Directory
11.Sessions
12.Cookie
13.Cache
14.Custom Controls
15.Profile
16.Configuration
17.LINQ
18.ADO.net Database
19.Data Binding
20.Ajax
21.Authentication Authorization
22.I18N
23.Mobile
24.WebPart
25.XML
ASP.NET Tutorial » Collections » Array 
7.1.7.Searching for an equivalent object with Array.BinarySearch (C#)
<%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    
    </div>
    </form>
</body>
</html>

File: Default.aspx.cs

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        Person scott = new Person("A""B");
        Person bill = new Person("C""D");
        Person srini = new Person("E""F");

        Person[] people = bill, scott, srini };

        int indexOfC = Array.IndexOf(people, bill);
        Response.Write("C is at " + indexOfC + "<BR/>");

        int indexOfA = Array.IndexOf(people, scott);
        Response.Write("A is at " + indexOfA + "<BR/>");

        Person scott2 = new Person("A""B");
        int indexOfA2 = Array.IndexOf(people, scott2);
        Response.Write("A #2 is at " + indexOfA2 + "<BR/>");

        int indexOfEquivalentA = Array.BinarySearch(people, scott2);
        Response.Write("An Equivalent A is at " + indexOfEquivalentA + "<BR/>");
    }
}

public class Person : IComparable
{
    string FirstName;
    string LastName;

    public Person(string first, string last)
    {
        FirstName = first;
        LastName = last;
    }

    public string FullName
    {
        get
        {
            return FirstName + " " + LastName;
        }
    }

    int IComparable.CompareTo(object obj)
    {
        Person p2 = obj as Person;
        if (p2 == nullthrow new ArgumentException("Object is not a Person!");

        int lastNameResult = this.LastName.CompareTo(p2.LastName);

        if (lastNameResult == 0)
        {
            int firstNameResult = this.FirstName.CompareTo(p2.FirstName);
            return firstNameResult;
        }
        else
        {
            return lastNameResult;
        }
    }

}
7.1.Array
7.1.1.Define and use array in asp.net page (VB)
7.1.2.Define and use array in asp.net page (C#)
7.1.3.Looking for an object in an array by reference (C#)
7.1.4.Looking for an object in an array by reference (VB)
7.1.5.Searching for a object in an array by reference (C#)
7.1.6.Searching for a object in an array by reference (VB)
7.1.7.Searching for an equivalent object with Array.BinarySearch (C#)
7.1.8.Searching for an equivalent object with Array.BinarySearch (VB)
7.1.9.Sorting arrays of Person (C#)
7.1.10.Sorting arrays of Person (VB)
7.1.11.Array with custom objects
7.1.12.Array binding
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.