小编典典

if语句匹配多个值

c#

还有什么更简单的方法来编写此if语句?

if (value==1 || value==2)

例如,在SQL中,您可以说where value in (1,2)而不是where value=1 or value=2

我正在寻找适用于任何基本类型的东西…字符串,整数等。


阅读 563

收藏
2020-05-19

共1个答案

小编典典

怎么样:

if (new[] {1, 2}.Contains(value))

这是一个hack :)

或者,如果您不介意创建自己的扩展方法,则可以创建以下内容:

public static bool In<T>(this T obj, params T[] args)
{
    return args.Contains(obj);
}

您可以像这样使用它:

if (1.In(1, 2))

:)

2020-05-19