Phương thức Type.Equals() trong C# xác định xem kiểu hệ thống cơ bản của Type hiện tại có giống với kiểu hệ thống cơ bản của Object hoặc Type được chỉ định hay không.
Cú pháp
public virtual bool Equals(Type o); public override bool Equals(object o);
Tham số là đối tượng có kiểu hệ thống cơ bản được so sánh với kiểu hệ thống cơ bản của Type hiện tại.
Ví dụ 1: So sánh hai kiểu khác nhau
using System;
public class Demo {
public static void Main(string[] args) {
Type val1 = typeof(System.UInt16);
Type val2 = typeof(System.Int32);
Console.WriteLine("Hai kiểu có bằng nhau? " + val1.Equals(val2));
}
}
Kết quả
Hai kiểu có bằng nhau? False
Ví dụ 2: So sánh kiểu String với TypeInfo
using System;
using System.Reflection;
public class Demo {
public static void Main(string[] args) {
Type type = typeof(String);
Object obj = typeof(String).GetTypeInfo();
Type type2 = obj as Type;
if (type2 != null)
Console.WriteLine("Hai kiểu có bằng nhau? " + type.Equals(type2));
else
Console.WriteLine("Không thể ép kiểu!");
}
}
Kết quả
Hai kiểu có bằng nhau? True