📅  最后修改于: 2023-12-03 15:38:32.053000             🧑  作者: Mango
在C#中,枚举类型可以被用来定义一组命名的整数常量。有时候,我们可能需要使用枚举类型的哈希码来进行比较或者其他操作。下面将介绍如何在C#中获取枚举的哈希码。
获取枚举的哈希码可以通过调用GetHashCode()
方法来实现。该方法可以返回当前对象的哈希码,对于枚举类型来说,它将返回枚举常量的整数值。
下面是一个获取枚举哈希码的示例代码:
public enum Color
{
Red = 0,
Green = 1,
Blue = 2
}
Color myColor = Color.Red;
int hashCode = myColor.GetHashCode();
Console.WriteLine("My Color HashCode: {0}", hashCode);
输出结果:
My Color HashCode: 0
为了使用更加方便,我们可以定义一个扩展方法来获取枚举哈希码。下面是一个扩展方法的示例代码:
public static class EnumExtensions
{
public static int GetEnumHashCode(this Enum value)
{
return value.GetHashCode();
}
}
Color myColor = Color.Red;
int hashCode = myColor.GetEnumHashCode();
Console.WriteLine("My Color HashCode: {0}", hashCode);
输出结果:
My Color HashCode: 0
在C#中,获取枚举哈希码可以通过调用GetHashCode()
方法来实现,也可以通过定义扩展方法来进行扩展。