Heim  >  Artikel  >  Backend-Entwicklung  >  So verwenden Sie sowohl Take- als auch Skip-Operatoren in der LINQ C#-Programmierung

So verwenden Sie sowohl Take- als auch Skip-Operatoren in der LINQ C#-Programmierung

WBOY
WBOYnach vorne
2023-09-06 16:45:07727Durchsuche

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

Wir erstellen zwei Instanzen der Employee-Klasse, e und e1. e ist zugeordnet e1. Beide Objekte verweisen auf dieselbe Referenz, sodass wir wahr werden Für alle Gleichheiten erwartete Ausgabe.

Im zweiten Fall können wir beobachten, dass die Attributwerte zwar gleich sind „Gleich“ gibt „false“ zurück. Grundsätzlich gilt, wenn Parameter auf unterschiedliche Objekte verweisen Equals überprüft den Wert nicht und gibt immer false zurück.

Beispiel 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; }
}

Ausgabe

True
False

Beispiel 2

Die chinesische Übersetzung lautet:

Beispiel 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();
   }
}

Ausgabe

True
True

Das obige ist der detaillierte Inhalt vonSo verwenden Sie sowohl Take- als auch Skip-Operatoren in der LINQ C#-Programmierung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen