Type.Equals Method (Object)

Microsoft Silverlight will reach end of support after October 2021. Learn more.

Determines if the underlying system type of the current Type is the same as the underlying system type of the specified Object.

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

Syntax

'Declaration
Public Overrides Function Equals ( _
    o As Object _
) As Boolean
public override bool Equals(
    Object o
)

Parameters

  • o
    Type: System.Object
    The Object whose underlying system type is to be compared with the underlying system type of the current Type.

Return Value

Type: System.Boolean
true if the underlying system type of o is the same as the underlying system type of the current Type; otherwise, false. This method also returns false if the object specified by the o parameter is not a Type.

Remarks

This method overrides Object.Equals.

Examples

The following example uses Equals to compare two Object instances.

Imports System.Reflection

Class Example

   Public Shared Sub Demo(ByVal outputBlock As System.Windows.Controls.TextBlock)

      Dim a As Type = GetType(System.Object)
      Dim b As Type = GetType(System.Object)
      outputBlock.Text += String.Format("{0} = {1}: {2}", a, b, a.Equals(b)) & vbCrLf
      ' The Type objects in a and b are equal,
      ' because they represent System.Object.

      a = GetType(Example)
      b = New Example().GetType()
      outputBlock.Text += String.Format("{0} is equal to {1}: {2}", a, b, a.Equals(b)) & vbCrLf
      ' The Type objects in a and b are equal,
      ' because they both represent type Example.

      b = GetType([Object])
      outputBlock.Text += String.Format("typeof({0}).Equals(typeof({1})): {2}", a, b, a.Equals(b)) & vbCrLf

      ' The Type objects in a and b are not equal,
      ' because variable a represents type Example
      ' and variable b represents type Object.

      'Console.ReadLine();

   End Sub
End Class
'
' This code example produces the following output:
'    System.Object = System.Object: True
'    Example is equal to Example: True
'    typeof(Example).Equals(typeof(System.Type)): False
'

using System;
using System.Reflection;

class Example
{
   public static void Demo(System.Windows.Controls.TextBlock outputBlock)
   {

      Type a = typeof(System.Object);
      Type b = typeof(System.Object);

      outputBlock.Text += String.Format("{0} == {1}: {2}", a, b, a.Equals(b)) + "\n";

      // The Type objects in a and b are equal,
      // because they represent System.Object.

      a = typeof(Example);
      b = new Example().GetType();

      outputBlock.Text += String.Format("{0} is equal to {1}: {2}", a, b, a.Equals(b)) + "\n";

      // The Type objects in a and b are equal,
      // because they both represent type Example.

      b = typeof(Object);

      outputBlock.Text += String.Format("typeof({0}).Equals(typeof({1})): {2}", a, b, a.Equals(b)) + "\n";

      // The Type objects in a and b are not equal,
      // because variable a represents type Example
      // and variable b represents type Object.

      //Console.ReadLine();

   }
}

//
/* This code example produces the following output:
    System.Object == System.Object: True
    Example is equal to Example: True
    typeof(Example).Equals(typeof(System.Type)): False
*/

Version Information

Silverlight

Supported in: 5, 4, 3

Silverlight for Windows Phone

Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0

XNA Framework

Supported in: Xbox 360, Windows Phone OS 7.0

Platforms

For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.