Встречается на собеседованиях • сегодня
Что такое equals
Метод Equals в C# используется для сравнения объектов на равенство. Он определен в классе Object и может быть переопределен в производных классах для реализации пользовательской логики сравнения.
Основные моменты:
- По умолчанию
Equalsдля ссылочных типов сравнивает ссылки (как==), а для значимых типов — значения. - Для строк
Equalsсравнивает содержимое, а не ссылки. - Рекомендуется переопределять
Equals, если переопределяетсяGetHashCode.
Пример:
csharp
public class Person
{
public string Name { get; set; }
public override bool Equals(object obj)
{
if (obj is Person other)
return Name == other.Name;
return false;
}
public override int GetHashCode() => Name?.GetHashCode() ?? 0;
}
var p1 = new Person { Name = "Alice" };
var p2 = new Person { Name = "Alice" };
Console.WriteLine(p1.Equals(p2)); // true (сравнение по имени)
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы