如何缩短逻辑OR中的多个相等检查?

时间:2015-06-18 20:50:07

标签: objective-c c

C / ObjectiveC中有没有办法

缩短这个?

if (a == b || a == c || a == d)
{

}

这样

我会有这样的事情吗?

if (a == (b || c || d))
{

}

我知道后者不正确但我想要的东西类似于普通英语,即

如果“a”等于this或this或this ......那么就做点什么。我发现重复== 操作员有点多余。

2 个答案:

答案 0 :(得分:2)

不,你第一次写的没错。

顺便说一下,较短的代码不一定是更好的代码。通常更难阅读。

答案 1 :(得分:2)

如果你正在使用objective-c对象:

if([@[b,c,d] containsObject:a]) 

否则,无法简化您的第一次实施。