Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C#

เมธอด Char.GetHashCode ใน C# พร้อมตัวอย่าง


บทนำ

เมธอด Char.GetHashCode() ใน C# ใช้คืนค่ารหัสแฮช (hash code) สำหรับอินสแตนซ์ Char ปัจจุบัน รหัสแฮชเป็นจำนวนเต็ม 32 บิตที่มีเครื่องหมาย (int)

ไวยากรณ์ (Syntax)

public override int GetHashCode ();

ตัวอย่างที่ 1: รหัสแฮชของตัวอักษร 'H'

using System;

public class Demo 
{
    public static void Main()
    {
        char val = 'H';
        bool res;
        
        Console.WriteLine("Hashcode for val = " + val.GetHashCode());
        res = val.Equals('d');
        Console.WriteLine("Return Value = " + res);
    }
}

ผลลัพธ์

Hashcode for val = 4718664
Return Value = False

ตัวอย่างที่ 2: รหัสแฮชของตัวอักษร 'm'

using System;

public class Demo 
{
    public static void Main()
    {
        char val = 'm';
        bool res;
        
        Console.WriteLine("Hashcode for val = " + val.GetHashCode());
        res = val.Equals('m');
        Console.WriteLine("Return Value = " + res);
    }
}

ผลลัพธ์

Hashcode for val = 7143533
Return Value = True

สรุป

รหัสแฮชของ Char คำนวณจากค่า Unicode code point ของตัวอักษรนั้นๆ ตัวอักษรเดียวกันจะมีรหัสแฮชเท่ากันเสมอ ทำให้ Char ใช้งานได้อย่างมีประสิทธิภาพในโครงสร้างข้อมูลแบบแฮช เช่น Dictionary<char, T> หรือ HashSet<char>