Как проверить, содержит ли поле хотя бы одна структура из List, пользуясь методом Contains ()?

Вкратце, нужно делать проверки у List методом Contains(), но сравнивать поле с полем структуры.

Пример кода:

struct Example
{
    string name;
    int ID;
    float parameter1;
    bool parameter2;
    
    Example(name)
    {
        this.name = name;
    }
}

List<Example> examples = new Example();
examples.Add(new Example("part1"));
examples.Add(new Example("part2"))

if (examples.Contains(string "part1"))
{
    // do something
}

Я пробовал переопределить метод Equals() в структуре таким образом и ничего у меня не вышло:

public override bool Equals(object obj)
{
   if(obj is string str) 
   return this.name == str;
}
public Equals(string str)
{
   return this.name == str;
}

Также есть вопрос заодно, почему надо переопределять метод GetHashCode() вместе с Equals()? Можно ли этот момент пропустить и будут ли последствия?


Ответы (0 шт):