首頁  >  文章  >  後端開發  >  如何在 LINQ C# 程式設計中同時使用 Take 和 Skip 運算子

如何在 LINQ C# 程式設計中同時使用 Take 和 Skip 運算子

WBOY
WBOY轉載
2023-09-06 16:45:07849瀏覽

如何在 LINQ C# 编程中同时使用 Take 和 Skip 运算符

我們正在建立 Employee 類別的兩個實例,e 和 e1。 e 被分配給 e1。兩個物件都指向同一個引用,因此我們將得到 true 對於所有的Equals,預期輸出。

在第二個案例中,我們可以觀察到,儘管屬性值相同 Equals回傳false。基本上,當參數引用不同的物件時 等於不檢查值並且始終傳回 false。

範例1

class Program{
   static void Main(string[] args){
      Employee e = new Employee();
      e.Name = "Test";
      e.Age = 27;
      Employee e2 = new Employee();
      e2 = e;
      var valueEqual = e.Equals(e2);
      Console.WriteLine(valueEqual);
      //2nd Case
      Employee e1 = new Employee();
      e1.Name = "Test";
      e1.Age = 27;
      var valueEqual1 = e.Equals(e1);
      Console.WriteLine(valueEqual1);
      Console.ReadLine();
   }
}
class Employee{
   public int Age { get; set; }
   public string Name { get; set; }
}

輸出

True
False

Example 2

的中文翻譯為:

範例2

class Program{
   static void Main(string[] args){
      Employee e = new Employee();
      e.Name = "Test";
      e.Age = 27;
      Employee e2 = new Employee();
      e2 = e;
      var valueEqual = e.Equals(e2);
      Console.WriteLine(valueEqual);
      Employee e1 = new Employee();
      e1.Name = "Test";
      e1.Age = 27;
      var valueEqual1 = e.Equals(e1);
      Console.WriteLine(valueEqual1);
      Console.ReadLine();
   }
}
class Employee{
   public int Age { get; set; }
   public string Name { get; set; }
   public override bool Equals(object? obj){
      if (obj == null)
      return false;
      if (this.GetType() != obj.GetType()) return false;
      Employee p = (Employee)obj;
      return (this.Age == p.Age) && (this.Name == p.Name);
   }
   public override int GetHashCode(){
      return Age.GetHashCode() ^ Name.GetHashCode();
   }
}

輸出

True
True

以上是如何在 LINQ C# 程式設計中同時使用 Take 和 Skip 運算子的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:tutorialspoint.com。如有侵權,請聯絡admin@php.cn刪除