C# Equals方法 图片看不了?点击切换HTTP 返回上层
C# Equals 方法主要用于比较两个对象是否相等,如果相等则返回 True,否则返回 False。
如果是引用类型的对象,则用于判断两个对象是否引用了同一个对象。
在 C# 语言中,Equals 方法提供了两个,一个是静态的,一个是非静态的,具体的定义如下。
下面通过实例演示 Equals 方法的使用。
【实例】使用 Equals 方法判断两个对象是否引用了 Student 对象。
根据题目要求,首先创建 Student 类,由于并不需要使用该类的成员,在类中不必写 任何代码,创建 Student 类的代码如下。
创建两个 Student 类的对象,并使用 Equals 方法比较类的对象,代码如下。
执行上面的代码,效果如下图所示。
从上面的执行效果可以看出,Stu1 和 Stu2 引用的并不是同一个对象。如果将代码更改为:
这样使用 Equals 方法判断的结果才为 True。如果使用 Equals(object o)方法比较 stul 和 stu2 的值,代码如下。
如果是引用类型的对象,则用于判断两个对象是否引用了同一个对象。
在 C# 语言中,Equals 方法提供了两个,一个是静态的,一个是非静态的,具体的定义如下。
1 2 | Equals (object ol, object o2); //静态方法 Equals (object o); //非静态方法 |
【实例】使用 Equals 方法判断两个对象是否引用了 Student 对象。
根据题目要求,首先创建 Student 类,由于并不需要使用该类的成员,在类中不必写 任何代码,创建 Student 类的代码如下。
1 | class Student{}; |
1 2 3 4 5 6 7 8 9 10 | class Program { static void Main(string[] args) { Student stu1 = new Student(); Student stu2 = new Student(); bool flag = Equals(stu1, stu2); Console.WriteLine( "stu1 和 stu2 比较的结果为,{0}" , flag); } } |

从上面的执行效果可以看出,Stu1 和 Stu2 引用的并不是同一个对象。如果将代码更改为:
1 | Student stu2=stu1; |
1 | stul.Equals(stu2); |