Object.Equals Method (Object)

Determines whether a specified instance (object) of the Object class is equal to the current object of that class.

Namespace: System
Assembly: mscorlib (in mscorlib.dll)


public virtual bool Equals (
         Object obj


  • obj
    The object you want to compare with the current object.

Return Value

true if the specified object is equal to the current object; otherwise, false.


When using this method, you may get unexpected results if you pass it parameters that are not of type Object. For instance, the following code example does not work as it would in the .NET Framework for the desktop.

      long now = DateTime.Now.Ticks;
      DateTime t1 = new DateTime( now );
      DateTime t2 = new DateTime( now );
      Debug.Assert(t1 == t2); // OK
      Debug.Assert(t1.Equals(t2)); // OK
      Debug.Assert(object.Equals(t1, t2 )); // Throws exception!

In the preceding example, the exception would not normally be thrown when using the .NET Framework. However, the .NET Micro Framework does throw an exception because it cannot determine the types of the objects being compared. The .NET Micro Framework functions this way to keep its size small. Implementing the full desktop semantics of this method would significantly increase the size of all objects in all programs for the .NET Micro Framework.

Version Information

Available in the .NET Micro Framework versions 2.0, 2.5, 3.0, 4.0, 4.1, and 4.2.

See Also


Object Class
Object Members
System Namespace