This method is used to return the hash code for this instance. A hash code is a numeric value which is used to insert and identify an object in a hash-based collection. The GetHashCode
method provides this hash code for algorithms that need quick checks of object equality.
Syntax:
public virtual int GetHashCode ();
Return Value: This method returns a 32-bit signed integer hash code for the current object.
Below programs illustrate the use of Object.GetHashCode() Method:
Example 1:
using System;
class GFG {
public static void Main()
{
Object obj = new Object();
Type t = obj.GetType();
Console.WriteLine( "Type is :{0}" , t);
Console.WriteLine( "Hash Code is :{0}" ,
t.GetHashCode());
}
}
|
Output:
Type is :System.Object
Hash Code is :37162120
Example 2:
using System;
public class Author {
public string f_Name;
public string l_Name;
public Author( string f_Name,
string l_Name)
{
this .f_Name = f_Name;
this .l_Name = l_Name;
}
public void Show()
{
Console.WriteLine( "first Name : "
+ f_Name);
Console.WriteLine( "last Name : "
+ l_Name);
}
}
class GFG {
public static void Main()
{
Author aobj = new Author( "Kirti" , "Mangal" );
Console.WriteLine( "Author details:" );
aobj.Show();
Console.WriteLine( "The hash code of object is: {0}" ,
aobj.GetHashCode());
}
}
|
Output:
Author details:
first Name : Kirti
last Name : Mangal
The hash code of object is: -751588944
Important Points:
- Two objects that return different hash codes means objects are not equal but the reverse is not true. Means, equal hash codes do not imply object equality, because different (unequal) objects can have identical hash codes.
- The .NET Framework does not guarantee the default implementation of the GetHashCode method, and the value this method returns may differ between .NET Framework versions and platforms, such as 32-bit and 64-bit platforms.
- A hash code is not a permanent value so do not serialize, store the hash values in databases etc.
- Do not test for equality of hash codes to determine whether two objects are equal.
Reference: https://docs.microsoft.com/en-us/dotnet/api/system.object.gethashcode?view=netframework-4.7.2
Whether you're preparing for your first job interview or aiming to upskill in this ever-evolving tech landscape,
GeeksforGeeks Courses are your key to success. We provide top-quality content at affordable prices, all geared towards accelerating your growth in a time-bound manner. Join the millions we've already empowered, and we're here to do the same for you. Don't miss out -
check it out now!
Last Updated :
17 Feb, 2020
Like Article
Save Article