C#-এ SByte.GetHashCode() মেথডটি বর্তমান SByte ইনস্ট্যান্সের হ্যাশ কোড (hash code) রিটার্ন করে। SByte হল ৮-বিট সাইনড ইন্টিজার (রেঞ্জ: -128 থেকে 127)।
সিনট্যাক্স (Syntax)
public override int GetHashCode ();
উদাহরণ ১: দুটি SByte মানের হ্যাশ কোড
using System;
public class Demo {
public static void Main() {
sbyte s1 = 50;
sbyte s2 = 75;
Console.WriteLine("Value of S1 = " + s1);
Console.WriteLine("Value of S2 = " + s2);
Console.WriteLine("Is s1 and s2 equal? = " + s1.Equals(s2));
Console.WriteLine("HashCode for s1 = " + s1.GetHashCode());
Console.WriteLine("HashCode for s2 = " + s2.GetHashCode());
}
}
আউটপুট
Value of S1 = 50 Value of S2 = 75 Is s1 and s2 equal? = False HashCode for s1 = 50 HashCode for s2 = 75
উদাহরণ ২: SByte এবং অবজেক্টের হ্যাশ কোড তুলনা
using System;
public class Demo {
public static void Main() {
sbyte s1 = 55;
object s2 = (sbyte)55;
Console.WriteLine("Value of S1 = " + s1);
Console.WriteLine("Value of S2 = " + s2);
int res = s1.CompareTo(s2);
if (res > 0)
Console.WriteLine("s1 > s2");
else if (res < 0)
Console.WriteLine("s1 < s2");
else
Console.WriteLine("s1 = s2");
Console.WriteLine("HashCode for s1 = " + s1.GetHashCode());
Console.WriteLine("HashCode for s2 = " + s2.GetHashCode());
}
}
আউটপুট
Value of S1 = 55 Value of S2 = 55 s1 = s2 HashCode for s1 = 55 HashCode for s2 = 55
মূল পয়েন্টস
- SByte-এর জন্য হ্যাশ কোড সাধারণত নিজেই মানটি রিটার্ন করে (কারণ এটি ৮-বিট এবং সহজে হ্যাশ করা যায়)।
- দুটি সমান SByte মান সবসময় একই হ্যাশ কোড দেবে।
- বক্সড (boxed) SByte (অবজেক্ট হিসেবে) এর হ্যাশ কোডও একই থাকে।
- হ্যাশ কোড হ্যাশ-ভিত্তিক কালেকশনে দ্রুত লুকআপের জন্য অত্যন্ত গুরুত্বপূর্ণ।