C#的Equals方法

来源:互联网 发布:文字编辑软件 编辑:程序博客网 时间:2024/06/04 17:57

先给上微软的实例链接,Object.Equals方法,然后是我的总结


总起:Equals比较取决于参数是  值类型 引用类型


1.引用类型

1.1  Equals 等于ReferenceEquals(System.Object,System.Object)
1.2 Reference equality 就是比较引用指向是否相同
1.3 指向同一个对象,就是返回true;否则,即使值完全相同的,指向不同的2个对象也返回fasle

1.4 String也是引用类型,但是由于String最常使用,它的Equals方法被重写了,String的Equals方法是比较具有相同的值


2.值类型

2.1 先比较数据类型,如:12 (Byte) = 12 (Int32): False;

2.2 类型相同再比较值相等否


3.String的Equals有些不同

官方是这么说的:确定此实例是否和另一个的String对象具有相同的值。


4.最后说一下

Equals和==有很多相似之处,但是也有不同的地方,可以看我写的关于C#的运算符==的博客C#的运算符==

若是是String对象,一定要注意它不同于一般的引用类型,主要是因为String被使用的太多了,

微软重写了String.Equals()和重载了String的==



1 0
原创粉丝点击