Matt T Heffron
Если вам нужно будет делать это часто, особенно если есть больше, чем просто пара элементов, то вы должны создать функцию, которая делает это:
public static bool IsOneOf(string s, params string[] many)
{
if (many == null)
throw new ArgumentNullException("many");
return ((IList<string>)many).Contains(s);
}
Вы бы использовали его как:
if (!IsOneOf(dog, "cat", "cow"))
{
Console.WriteLine("A dog is not equal to a cow nor a cat!");
}
Это довольно просто.
Более продвинутым решением было бы создание универсального метода расширения:
public static class MyExtensionMethods
{
public static bool IsOneOf<T>(this T s, params T[] many)
{
if (many == null)
throw new ArgumentNullException("many");
return ((IList<T>)many).Contains(s);
}
}
Вы бы использовали его как:
if (!dog.IsOneOf("cat", "cow"))
{
Console.WriteLine("A dog is not equal to a cow nor a cat!");
}
Есть и другие способы сделать это, некоторые оптимизированы для определенных случаев.