Information
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

String.GetHashCode Method

Returns the hash code for this string.

Namespace: System
Assembly: mscorlib (in mscorlib.dll)

public override int GetHashCode ()
public int GetHashCode ()
public override function GetHashCode () : int

Return Value

A 32-bit signed integer hash code.

The behavior of GetHashCode is dependent on its implementation, which might change from one version of the common language runtime to another. A reason why this might happen is to improve the performance of GetHashCode. If you require the behavior of GetHashCode to be constant, override the runtime implementation of GetHashCode with an implementation of your own that you know will never change.

The following code example demonstrates the GetHashCode method using various input strings.

// Example for the String.GetHashCode( ) method.
using System;

class GetHashCode 
{
    public static void Main() 
    {
        Console.WriteLine( 
            "This example of String.GetHashCode( ) " +
            "generates the following output.\n" );

        DisplayHashCode( "" );
        DisplayHashCode( "a" );
        DisplayHashCode( "ab" );
        DisplayHashCode( "abc" );
        DisplayHashCode( "abd" );
        DisplayHashCode( "abe" );
        DisplayHashCode( "abcdef" );
        DisplayHashCode( "abcdeg" );
        DisplayHashCode( "abcdeh" );
        DisplayHashCode( "abcdei" );
        DisplayHashCode( "Abcdeg" );
        DisplayHashCode( "Abcdeh" );
        DisplayHashCode( "Abcdei" );
    }

    static void DisplayHashCode( String Operand )
    {
        int     HashCode = Operand.GetHashCode( );
        Console.WriteLine( 
            "The hash code for \"{0}\" is: 0x{1:X8}, {1}",
            Operand, HashCode );
    }
}

/*
This example of String.GetHashCode( ) generates the following output.

The hash code for "" is: 0x00001505, 5381
The hash code for "a" is: 0x0002B5C4, 177604
The hash code for "ab" is: 0x00596E26, 5860902
The hash code for "abc" is: 0x0B873285, 193409669
The hash code for "abd" is: 0x0B873282, 193409666
The hash code for "abe" is: 0x0B873283, 193409667
The hash code for "abcdef" is: 0x4DDB4BE2, 1306217442
The hash code for "abcdeg" is: 0x4DDB4BE3, 1306217443
The hash code for "abcdeh" is: 0x4DDB4BEC, 1306217452
The hash code for "abcdei" is: 0x4DDB4BED, 1306217453
The hash code for "Abcdeg" is: 0x941C4FC3, -1810083901
The hash code for "Abcdeh" is: 0x941C4FCC, -1810083892
The hash code for "Abcdei" is: 0x941C4FCD, -1810083891
*/

// Example for the String.GetHashCode( ) method.
import System.*;

class GetHashCode
{
    public static void main(String[] args)
    {
        Console.WriteLine(("This example of String.GetHashCode( ) " 
            + "generates the following output.\n"));
        DisplayHashCode("");
        DisplayHashCode("a");
        DisplayHashCode("ab");
        DisplayHashCode("abc");
        DisplayHashCode("abd");
        DisplayHashCode("abe");
        DisplayHashCode("abcdef");
        DisplayHashCode("abcdeg");
        DisplayHashCode("abcdeh");
        DisplayHashCode("abcdei");
        DisplayHashCode("Abcdeg");
        DisplayHashCode("Abcdeh");
        DisplayHashCode("Abcdei");
    } //main

    static void DisplayHashCode(String operand)
    {
        int hashCode = operand.GetHashCode();
        Console.WriteLine("The hash code for \"{0}\" is: 0x{1}, {2}", 
            operand, ((System.Int32)hashCode).ToString("X8"), 
            ((System.Int32)hashCode).ToString(""));
    } //DisplayHashCode
} //GetHashCode

/*
This example of String.GetHashCode( ) generates the following output.

The hash code for "" is: 0x00001505, 5381
The hash code for "a" is: 0x0002B5C4, 177604
The hash code for "ab" is: 0x00596E26, 5860902
The hash code for "abc" is: 0x0B873285, 193409669
The hash code for "abd" is: 0x0B873282, 193409666
The hash code for "abe" is: 0x0B873283, 193409667
The hash code for "abcdef" is: 0x4DDB4BE2, 1306217442
The hash code for "abcdeg" is: 0x4DDB4BE3, 1306217443
The hash code for "abcdeh" is: 0x4DDB4BEC, 1306217452
The hash code for "abcdei" is: 0x4DDB4BED, 1306217453
The hash code for "Abcdeg" is: 0x941C4FC3, -1810083901
The hash code for "Abcdeh" is: 0x941C4FCC, -1810083892
The hash code for "Abcdei" is: 0x941C4FCD, -1810083891
*/

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see System Requirements.

.NET Framework

Supported in: 2.0, 1.1, 1.0

.NET Compact Framework

Supported in: 2.0, 1.0

Community Additions

Show:
© 2014 Microsoft