2011-08-16 50 views

回答

1

==運營商最常用的檢查爲了內存平等。

如果您要檢查的兩個對象是對象(或指針),那麼這將比較該對象所在的地址

.Equals()函數由類實現以檢查兩個對象之間的相等性。此功能(在類中實現)將檢查對象中的數據值,而不是其所在的內存地址。

某些對象會覆蓋==運算符(see the answer here),因此兩種檢查相等性的方法可能都是相同的對於一些,但不是所有的對象。因此,使用.Equals()更安全。

+0

根據此: http://msdn.microsoft.com/en-us/library/362314fe .aspx 您的陳述不正確。 –

+0

'=='可以被重載以使用其他比較而不是參考比較。字符串曾經是一個流行的例子。 – CodesInChaos

+0

謝謝,我編輯了我的答案以反映這一點。 – mopsled