报告具有三个或更多取反运算符 !!= 的方法。

此类方法可能会引起混淆。

示例:


  void doSmth(int a, int b, boolean flag1, boolean flag2) {
    if (!flag && !flag2) {
      if (a != b) {
        doOther();
      }
    }
  }

没有取反,该方法变得更容易理解:


  void doSmth(int a, int b, boolean flag1, boolean flag2) {
    if (flag1 || flag2 || a == b) return;
    doOther();
  }

配置检查: