Разница заключается в том, каким образом они сравнивают объекты:
Метод/Оператор | Описание | Сравнение для ссылочных типов | Сравнение для значимых типов | Перегрузка |
---|---|---|---|---|
Equals() | Виртуальный метод класса object , может быть перeопределен. | По умолчанию сравнивает ссылки (если не переопределен). | Сравнивает значения полей (при переопределении или для встроенных). | Возможна |
== | Перегружаемый оператор. | По умолчанию сравнивает ссылки (для ссылочных). | По умолчанию сравнивает значения (для значимых). | Возможна |
Примеры:
csharp
Разница заключается в том, каким образом они сравнивают объекты:
Метод/Оператор | Описание | Сравнение для ссылочных типов | Сравнение для значимых типов | Перегрузка |
---|---|---|---|---|
Equals() | Виртуальный метод класса object , может быть перeопределен. | По умолчанию сравнивает ссылки (если не переопределен). | Сравнивает значения полей (при переопределении или для встроенных). | Возможна |
== | Перегружаемый оператор. | По умолчанию сравнивает ссылки (для ссылочных). | По умолчанию сравнивает значения (для значимых). | Возможна |
Примеры:
csharp
Зарегистрируйтесь или войдите, чтобы получить доступ к полным ответам на все вопросы из банка вопросов.