Contains C# with Example
MSDN: Determines whether a sequence contains a specified element by using a specified IEqualityComparer List numbers = new List { 1, 2, 3, 4, 5 }; var result1 = numbers.Contains(4); // true var result2 = numbers.Contains(8); // false List secondNumberCollection = new List { 4, 5, 6, 7 }; // Note that can use the Intersect method in this case var result3 = secondNumberCollection.Where(item => numbers.Contains(item)); // will be true only for 4,5 Using a user defined object: public class Person { public string Name { get; set; } } List objects = new List { new Person { Name = "Nikki"}, new Person { Name = "Gilad"}, new Person { Name = "Phil"}, new Person { Name = "John"} }; //Using the Person's Equals method - override Equals() and GetHashCode() - otherwise it //will compare by reference and result will be false var result4 = objects.Contains(new Person { Name = "Phil" }); // true Using the Enumerable.Contains(value, comparer) overload: public class Compare : IEqualityComparer { public bool Equals(Person x, Person y) { return x.Name == y.Name; } public int GetHashCode(Person codeh) { return codeh.Name.GetHashCode(); } } var result5 = objects.Contains(new Person { Name = "Phil" }, new Compare()); // true A smart usage of Contains would be to replace multiple if clauses to a Contains call. So instead of doing this: if(status == 1 || status == 3 || status == 4) { //Do some business operation } else { //Do something else } Do this: if(new int[] {1, 3, 4 }.Contains(status) { //Do some business operaion } else { //Do something else }