C#中判斷兩個ValueTuple T1是否相等


C#中的ValueTuple是一種用於表示資料結構的結構體,即可以容納多個不同型別值的的資料型別。ValueTuple在C# 7.0中引入,是對經典元組的重大改進,因為它為欄位提供了語義名稱。本文旨在教您如何比較ValueTuple的兩個例項以檢查它們是否相等。讓我們開始吧!

理解C#中的ValueTuple

在我們繼續之前,讓我們瞭解一下ValueTuple是什麼。ValueTuple是Tuple的一種值型別表示。ValueTuple允許您建立具有命名欄位的元組,這使得您的程式碼更易讀和自描述。

這是一個ValueTuple的示例:

ValueTuple<int, string, bool> valueTuple = (1, "Hello", true);

在這個例子中,valueTuple是ValueTuple的一個例項,它具有三個分別為int、string和bool型別的欄位。

比較兩個ValueTuple

在C#中,您可以直接使用==運算子來檢查兩個ValueTuple是否相等。如果所有元素都相等,則認為ValueTuple相等。

示例

這是一個例子:

using System;

public class Program {
   public static void Main() {
      ValueTuple<int, string, bool> valueTuple1 = (1, "Hello", true);
      ValueTuple<int, string, bool> valueTuple2 = (1, "Hello", true);

      if (valueTuple1.Equals(valueTuple2)) {
         Console.WriteLine("ValueTuples are equal.");
      }
      else {
         Console.WriteLine("ValueTuples are not equal.");
      }
   }
}

在這段程式碼中,我們首先定義了兩個ValueTuple valueTuple1和valueTuple2。然後,我們使用==運算子來檢查它們是否相等。如果兩個ValueTuple相等,控制檯將輸出“ValueTuples are equal.”。

輸出

ValueTuples are equal.

使用Equals方法

或者,您可以使用Equals方法進行ValueTuple比較。

示例

這是一個例子:

using System;

class Program {
   static void Main() {
      Tuple<int, string, bool> valueTuple1 = Tuple.Create(1, "Hello", true);
      Tuple<int, string, bool> valueTuple2 = Tuple.Create(1, "Hello", true);

      bool areEqual = valueTuple1.Equals(valueTuple2);

      Console.WriteLine("ValueTuples equal: " + areEqual);
   }
}

在這段程式碼中,我們使用Equals方法比較ValueTuple並將結果儲存在areEqual變數中。如果兩個ValueTuple相等,控制檯將輸出“ValueTuples equal: True”。

輸出

ValueTuples equal: True

結論

在C#中,ValueTuple提供了一種很好的方法來將多個相關值儲存在單個變數中。您可以使用==運算子或Equals方法來比較兩個ValueTuple。

更新於:2023年7月24日

瀏覽量:133

開啟你的職業生涯

完成課程獲得認證

開始學習
廣告