Type.Equals()方法用于检查当前Type的基础系统类型是否与指定的Object或Type的基础系统类型相同。此方法的重载列表中有2种方法,如下所示:
- Equals(Type)方法
- Equals(Object)方法
Type.Equals(Type) Method
此方法用于检查当前Type的基础系统类型是否与指定Type的基础系统类型相同。
用法: public virtual bool Equals (Type o);
Here, it takes the object whose underlying system type is to be compared with the underlying system type of the current Type.
返回值:如果o的基础系统类型与当前Type的基础系统类型相同,则此方法返回true,否则返回false。
以下示例程序旨在说明Type.Equals()方法的使用:
示例1:
// C# program to demonstrate the
// Type.Equals(Type) Method
using System;
using System.Globalization;
class GFG {
// Main Method
public static void Main()
{
// Declaring and initializing value1
Type value1 = typeof(System.String);
// Declaring and initializing value2
Type value2 = typeof(System.Int32);
// using Equals(Type) method
bool status = value1.Equals(value2);
// checking the status
if (status)
Console.WriteLine("{0} is equal to {1}",
value1, value2);
else
Console.WriteLine("{0} is not equal to {1}",
value1, value2);
}
}
输出:
System.String is not equal to System.Int32
示例2:
// C# program to demonstrate the
// Type.Equals(Type) Method
using System;
using System.Globalization;
class GFG {
// Main Method
public static void Main()
{
// calling get() method
get(typeof(System.String), typeof(System.String));
get(typeof(System.String), typeof(System.Int32));
get(typeof(System.Decimal), typeof(System.Double));
}
// defining get() method
public static void get(Type value1,
Type value2)
{
// using Equals(Type) method
bool status = value1.Equals(value2);
// checking the status
if (status)
Console.WriteLine("{0} is equal to {1}",
value1, value2);
else
Console.WriteLine("{0} is not equal to {1}",
value1, value2);
}
}
输出:
System.String is equal to System.String System.String is not equal to System.Int32 System.Decimal is not equal to System.Double
Type.Equals(Object) Method
此方法用于检查当前定义的Type对象的基础系统类型是否与指定Object的基础系统类型完全相同。
用法: public override bool Equals (object obj);
Here, it takes the object whose underlying system type is to be compared with the underlying system type of the current Type. For the comparison to succeed, obj must be able to be cast or converted to an object of type Type.
返回值:如果obj的基础系统类型与当前Type的基础系统类型相同,则此方法返回true,否则返回false。如果obj为null或无法强制转换或转换为Type对象,则此方法还返回false。
以下示例程序旨在说明上述方法的用法:
示例1:
// C# program to demonstrate the
// Type.Equals(Object) Method
using System;
using System.Globalization;
class GFG {
// Main Method
public static void Main()
{
// Declaring and initializing value1
Type value1 = typeof(int);
// Declaring and initializing value2
object value2 = typeof(int);
// using Equals(Object) method
bool status = value1.Equals(value2);
// checking the status
if (status)
Console.WriteLine("{0} is equal to {1}",
value1, value2);
else
Console.WriteLine("{0} is not equal to {1}",
value1, value2);
}
}
输出:
System.Int32 is equal to System.Int32
示例2:
// C# program to demonstrate the
// Type.Equals(Object) Method
using System;
using System.Globalization;
class GFG {
// Main Method
public static void Main()
{
// calling get() method
get(typeof(int), new Object());
get(typeof(System.String), (object)5.5);
get(typeof(System.String), null);
}
// defining get() method
public static void get(Type value1,
object value2)
{
// using Equals(Object) method
bool status = value1.Equals(value2);
// checking the status
if (status)
Console.WriteLine("{0} is equal to {1}",
value1, value2);
else
Console.WriteLine("{0} is not equal to {1}",
value1, value2);
}
}
输出:
System.Int32 is not equal to System.Object System.String is not equal to 5.5 System.String is not equal to
参考:
相关用法
- C# DateTimeOffset.Add()用法及代码示例
- C# String.Contains()用法及代码示例
- C# Math.Sin()用法及代码示例
- C# Math.Cos()用法及代码示例
- C# Dictionary.Add()用法及代码示例
- C# Math.Tan()用法及代码示例
- C# Math.Abs()方法用法及代码示例
- C# Math.Exp()用法及代码示例
- C# Math.Abs()函数用法及代码示例
注:本文由纯净天空筛选整理自RohitPrasad3大神的英文原创作品 C# | Type.Equals() Method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。