Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C#

Phương thức Type.Equals() trong C#

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