基本上我有一个对象,出于这个问题的目的,我称之为“a”。如果对象“a”的属性“b”是1
,4
,6
中的任何一个(例如,但可能有更多适当的值)我想将其设置为8
(例如)。现在我通常最终会做类似的事情 -
if( a.b == 1 || a.b == 4 || a.b == 6 )
a.b = 8;
但我不禁想到必须有更简单/更短的东西。我真的在寻找类似MSSQL in
语法的东西(如果存在) -
SELECT
*
FROM table
WHERE
table.field IN (1, 4, 6)
我想我可以创建一个数组,填充它然后检查它是否包含我在if
语句中的值,但这只会产生与原始{{1}相同数量的代码声明和为if
创建一个数组变量感觉有点矫枉过正 -
if
答案 0 :(得分:3)
回答有关MSSQL IN
类似语法的问题,您可以做的最简单的事情是:
if (new[] {1, 4, 6}.Contains(a.b)) {
a.b = 8;
}
但是,此代码可能会带来更多可读性方面的问题。