这个问题与==
和之间的区别无关Equals
。这就是为什么它们的设计与众不同。
我们知道差异会导致许多问题,这些问题一定很容易就可以发现:
Equals
并==
针对同一实体的两个实例产生不同的结果。==
比较子类时会产生不同的结果,因为==
它不是多态的简短的答案是C#语言设计团队和.NET框架设计团队无法就如何最好地比较值/对象是否相等达成共识,因此,每个人都实现了自己的系统。
有关更详细的技术答案,请参阅Eric Lippert撰写的有关该主题的博客文章。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句