在 C# 中检查两个枚举是否相等
枚举是 C# 编程语言的基本组成部分。它们允许开发人员定义一种变量类型,该变量可以具有一些预定义常量之一。了解如何比较两个枚举是否相等可能是 C# 编程工具箱中的重要工具。本文将指导您完成整个过程,最后,您将能够熟练地在 C# 中比较两个枚举值。
了解 C# 中的枚举
在我们继续之前,必须先了解什么是枚举。枚举是 C# 中的值类型,用于表示命名常量的集合,通常称为枚举器列表。
这是一个枚举的简单示例 -
public enum Days { Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday }
在此示例中,Days 是一个枚举,Sunday、Monday 等是其成员。
比较两个枚举
在 C# 中,检查两个枚举值是否相等非常简单。只需使用 == 运算符即可。
示例
这是一个示例 -
using System; public enum Days { Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday } public class Program { public static void Main() { Days day1 = Days.Monday; Days day2 = Days.Monday; if (day1 == day2) { Console.WriteLine("天数相等。"); } else { Console.WriteLine("天数不相等。"); } } }
在此代码片段中,我们首先定义两个 Days 类型的变量 day1 和 day2。然后我们使用 == 运算符检查 day1 和 day2 是否相等。
输出
天数相等。
比较不同大小写的枚举
C# 区分大小写,这意味着 Days.Monday 和 Days.monday 将被视为不同。但是,您可能遇到需要比较两个拼写相同但大小写不同的枚举值的情况。
您可以通过将枚举值转换为字符串,然后使用 String.Equals 方法比较字符串(以 StringComparison.OrdinalIgnoreCase 为参数)来实现此目的。
示例
以下是示例 −
using System; public enum Days { Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday } public class Program { public static void Main() { string day1 = Days.Monday.ToString(); string day2 = "monday"; if (String.Equals(day1, day2, StringComparison.OrdinalIgnoreCase)) { Console.WriteLine("天数相等。"); } else { Console.WriteLine("天数不相等。"); } } }
在此示例中,我们首先将枚举值转换为字符串。然后,我们使用 String.Equals 方法和 StringComparison.OrdinalIgnoreCase 来比较字符串,而不考虑其大小写。
输出
天数相等。
结论
在 C# 中,比较两个枚举值简单明了。通过使用 == 运算符或 String.Equals 方法进行不区分大小写的比较,您可以轻松检查两个枚举值是否相等。