JD.INST.TRUE

如果提前知道 for 类型实例检查的结果,报告 JD.INST.TRUE。

漏洞与风险

该构造没有错误,但检查没有意义,因此可以替换为非空检查。类型名称或 instanceof 参数名称可能存在拼写错误。

缓解与预防

移除该检查或将其替换为非空检查,或者更改代码以使用相应类型的对象。

示例 1

复制
      private void test3(String b) {
         if (b instanceof String) {
             foo();
         }
     }

针对第 10 行的 instanceof 表达式报告 JD.INST.TRUE:条件“b instanceof String”多余,可以替换为“!=null”。