我越来越NP_NULL_ON_SOME_PATH_FROM_RETURN_VALUE
在这个片段中
final Integer id = Ints.tryParse(idString);
FailReason.NO_SUCH_THING.checkCondition(id!=null);
something.setId(id.intValue());
Here, checkCondition
就像先决条件.checkArgument http://docs.guava-libraries.googlecode.com/git/javadoc/com/google/common/base/Preconditions.html#checkArgument%28boolean%29除了它抛出我自己的异常。在这里抛出 NPE 或 IAE 是不合适的,因为它检查的是外部输入而不是编程错误。
FindBugs 抱怨说“方法的返回值在没有进行 null 检查的情况下被取消引用,并且该方法的返回值通常应该检查 null。这可能会在执行代码时导致 NullPointerException。"
我可以教 FindBugs 吗checkCondition
当参数是时永远不会正常返回false
?
我(某种程度上)通过添加解决了这个问题
assert id!=null;
它是多余的和丑陋的,但仍然不那么丑陋@SuppressFBWarnings
并且更加本地化。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)