(不确定标题是否足够好解释此事)
我有这段代码:
string input = "5";
if (input == "" ||
input == "1" ||
input == "2" ||
input == "3" ||
input == "4" ||
input == "_" ||
input == "6" ||
input == "7" ||
input == "8")
{/* ... */}
else
{/* ... */}
Run Code Online (Sandbox Code Playgroud)
我怎样才能让它看起来更好?有没有办法去除重复的inputs?
upd:switch可能会让它变得更糟,因为在我的情况下,我将检查许多条件,其中大多数将运行非常有限的方法.
是的,你可以写一个像这样的扩展方法:
public static bool In<T>(this T value, params T[] list)
{
return list.Contains(value);
}
Run Code Online (Sandbox Code Playgroud)
并使用如下:
if (input.In("", "1", "2", ...))
...
Run Code Online (Sandbox Code Playgroud)