Различные методы проверки того, содержит ли список объектов значение в C#

Чтобы проверить, содержит ли список объектов определенное значение в C#, вы можете использовать различные методы. Вот несколько часто используемых подходов:

  1. Использование метода List.Contains:

    List<object> myList = // your list of objects
    object searchValue = // the value you want to check
    bool containsValue = myList.Contains(searchValue);
  2. Использование метода LINQ Any:

    List<object> myList = // your list of objects
    object searchValue = // the value you want to check
    bool containsValue = myList.Any(obj => obj.Equals(searchValue));
  3. Использование цикла foreach:

    List<object> myList = // your list of objects
    object searchValue = // the value you want to check
    bool containsValue = false;
    foreach (object obj in myList)
    {
       if (obj.Equals(searchValue))
       {
           containsValue = true;
           break;
       }
    }
  4. Реализация интерфейса IEquatable.
    Если ваши объекты являются пользовательскими классами, вы можете переопределить метод Equalsвнутри своего класса и реализовать Интерфейс IEquatable. Это позволяет вам использовать метод Containsнапрямую.

    public class MyClass : IEquatable<MyClass>
    {
       // Class implementation here
       public bool Equals(MyClass other)
       {
           // Equals implementation here
       }
    }
    List<MyClass> myList = // your list of MyClass objects
    MyClass searchValue = // the value you want to check
    bool containsValue = myList.Contains(searchValue);