有些时候写判断的时候过于粗心了,今天就发现了自己的一个小问题,记下来是督促自己以后写代码切不可草率了,小问题可能引发大问题!
public class TestClass {
private Long testL = null;
public Long getTestL() {
return testL;
}
public void setTestL(Long testL) {
this.testL = testL;
}
}
在判断上面的testL时我很粗心的直接使用了下面这种写法(哭)
if (1L == JgoClass.getTestL()) {
......
}
这种写法在testL的值不为null时确实是可以判断的,但是如果testL为null时明显是会抛出java.lang.NullPointerException异常的。我们应该规规矩矩的使用规范的判断。
if (new Long(1L).equals(JgoClass.getTestL())) {
......
}
这个小错让我意识到自己很多时候在写代码的时候不够细心,也没有良好的编写测试用例的习惯,自测时简单的把“想当然”的测试用例通过后就万事大吉,对于特殊值,边界值,非法值等情况没有耐心的考虑,实属不应该。