Lire en anglais

Partager via


Object.Equals Méthode

Définition

Détermine si les deux instances d'objet sont égales.

Surcharges

Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.

Equals(Object, Object)

Détermine si les instances d'objet spécifiées sont considérées comme égales.

Equals(Object)

Source:
Object.cs
Source:
Object.cs
Source:
Object.cs

Détermine si l'objet spécifié est égal à l'objet actuel.

C#
public virtual bool Equals (object obj);
C#
public virtual bool Equals (object? obj);

Paramètres

obj
Object

Objet à comparer à l'objet actuel.

Retours

true si l’objet spécifié est égal à l’objet actuel ; sinon, false.

Remarques

Pour plus d’informations sur cette API, consultez Remarques supplémentaires sur l’API pour Object.Equals.

Voir aussi

S’applique à

.NET 9 et autres versions
Produit Versions
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

Equals(Object, Object)

Source:
Object.cs
Source:
Object.cs
Source:
Object.cs

Détermine si les instances d'objet spécifiées sont considérées comme égales.

C#
public static bool Equals (object objA, object objB);
C#
public static bool Equals (object? objA, object? objB);

Paramètres

objA
Object

Premier objet à comparer.

objB
Object

Deuxième objet à comparer.

Retours

true si les objets sont considérés comme identiques ; sinon, false. Si objA et objB ont tous deux la valeur null, la méthode retourne true.

Exemples

L’exemple suivant illustre la Equals(Object, Object) méthode et la compare à la ReferenceEquals méthode .

C#
using System;

public class Example
{
   public static void Main()
   {
      Dog m1 = new Dog("Alaskan Malamute");
      Dog m2 = new Dog("Alaskan Malamute");
      Dog g1 = new Dog("Great Pyrenees");
      Dog g2 = g1;
      Dog d1 = new Dog("Dalmation");
      Dog n1 = null;
      Dog n2 = null;

      Console.WriteLine("null = null: {0}", Object.Equals(n1, n2));
      Console.WriteLine("null Reference Equals null: {0}\n", Object.ReferenceEquals(n1, n2));

      Console.WriteLine("{0} = {1}: {2}", g1, g2, Object.Equals(g1, g2));
      Console.WriteLine("{0} Reference Equals {1}: {2}\n", g1, g2, Object.ReferenceEquals(g1, g2));

      Console.WriteLine("{0} = {1}: {2}", m1, m2, Object.Equals(m1, m2));
      Console.WriteLine("{0} Reference Equals {1}: {2}\n", m1, m2, Object.ReferenceEquals(m1, m2));

      Console.WriteLine("{0} = {1}: {2}", m1, d1, Object.Equals(m1, d1));
      Console.WriteLine("{0} Reference Equals {1}: {2}", m1, d1, Object.ReferenceEquals(m1, d1));
   }
}

public class Dog
{
   // Public field.
   public string Breed;

   // Class constructor.
   public Dog(string dogBreed)
   {
      this.Breed = dogBreed;
   }

   public override bool Equals(Object obj)
   {
      if (obj == null || !(obj is Dog))
         return false;
      else
         return this.Breed == ((Dog) obj).Breed;
   }

   public override int GetHashCode()
   {
      return this.Breed.GetHashCode();
   }

   public override string ToString()
   {
      return this.Breed;
   }
}
// The example displays the following output:
//       null = null: True
//       null Reference Equals null: True
//
//       Great Pyrenees = Great Pyrenees: True
//       Great Pyrenees Reference Equals Great Pyrenees: True
//
//       Alaskan Malamute = Alaskan Malamute: True
//       Alaskan Malamute Reference Equals Alaskan Malamute: False
//
//       Alaskan Malamute = Dalmation: False
//       Alaskan Malamute Reference Equals Dalmation: False

Remarques

La méthode statique Equals(Object, Object) indique si deux objets, objA et objB, sont égaux. Il vous permet également de tester des objets dont la valeur est null pour l’égalité. Il compare objA et objB pour l’égalité comme suit :

  • Il détermine si les deux objets représentent la même référence d’objet. Si c’est le cas, la méthode retourne true. Ce test équivaut à appeler la ReferenceEquals méthode. En outre, si et sont tous deux objAobjBnull, la méthode retourne true.

  • Il détermine si objA ou objB a la valeur Null. Si c’est le cas, elle retourne false.

  • Si les deux objets ne représentent pas la même référence d’objet et que ni l’un ni l’autre n’est null, il appelle objA.Equals(objB) et retourne le résultat. Cela signifie que si objA remplace la Object.Equals(Object) méthode, cette substitution est appelée.

Voir aussi

S’applique à

.NET 9 et autres versions
Produit Versions
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0