首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将equals和not equals传入函数

将equals和not equals传入函数
EN

Stack Overflow用户
提问于 2013-05-17 20:48:39
回答 4查看 132关注 0票数 3

我有两段代码A和B,它们彼此完全相同,除了A具有以下内容

代码语言:javascript
复制
if(x == y)

B有这个

代码语言:javascript
复制
if(x != y)

其中x和y是整数。

我想减少代码的重复,所以想把这段代码放在一个单独的方法中。问题是如何将==!=运算符传递到这样的方法中并执行它?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2013-05-17 20:52:03

您可以传递一个Func<int, int, bool>

代码语言:javascript
复制
private void MyMethod(Func<int, int, bool> checker)
{
    if(checker(3, 4))
    {
         // Do Something.
    }
}
票数 4
EN

Stack Overflow用户

发布于 2013-05-17 20:50:18

就像把它和布尔异或?

代码语言:javascript
复制
bool negate = true;
...
if ((x == y) ^ negate)
  ...

在整数方程和不等式的情况下,它可以很容易地解决你的问题。

票数 14
EN

Stack Overflow用户

发布于 2013-05-17 20:53:37

可以这样做:

代码语言:javascript
复制
void TheMethod(Func<int, int, bool> criterion)
{
  ...

  if (criterion(x, y))

  ...
}

然后使用TheMethod((x, y) => x == y);TheMethod((x, y) => x != y);调用。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16609472

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档