首页 > 代码库 > ==,ReferenceEquals, Static Equals, Instance Equals

==,ReferenceEquals, Static Equals, Instance Equals

1. ==

  • value type, 比较 value  (string 比较 value)
  • refrence type, 比较 reference
  • 两个都是null,也返回 true.

2. ReferenceEquals:  

  • 只比较Reference Type, 当两个参数是值类型时,先进性封装, 永远返回false. 
  • 其他等同于 ==

技术分享

3. Static Equals

  • 首先用 == 比较 两个参数, 如果返回false,则使用instance Equals.

技术分享

 

4. Instance Equals

  • 值类型装箱后,仍然调用ValueType的 instance Equals 方法, 比较类型和数值。
  • 引用类型,则比较Reference.

技术分享

 

==,ReferenceEquals, Static Equals, Instance Equals