C# 中檢查兩個列舉是否相等


列舉 (Enums) 是 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("The days are equal.");
      } else {
         Console.WriteLine("The days are not equal.");
      }
   }
}

在這個程式碼片段中,我們首先定義了兩個 Days 型別的變數 day1 和 day2。然後,我們使用 == 運算子來檢查 day1 和 day2 是否相等。

輸出

The days are equal.

比較不同大小寫的列舉

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("The days are equal.");
      } else {
         Console.WriteLine("The days are not equal.");
      }
   }
}

在這個例子中,我們首先將列舉值轉換為字串。然後,我們使用 String.Equals 方法和 StringComparison.OrdinalIgnoreCase 來比較字串,而不考慮它們的大小寫。

輸出

The days are equal.

結論

在 C# 中,比較兩個列舉值既簡單又直接。透過使用 == 運算子或 String.Equals 方法進行不區分大小寫的比較,你可以輕鬆地檢查兩個列舉值是否相等。

更新於:2023年7月24日

4K+ 閱讀量

開啟你的職業生涯

透過完成課程獲得認證

開始學習
廣告
© . All rights reserved.