Java 避免空指针错误常用规范

2019-05-25 15:30:57 浏览数 (2)

空指针的避免

对一个为null的变量或者对象进行操作时,就会容易出现这种报错。

代码语言:javascript复制
Object object = null;
String string = object.toString();

上面的代码就会出现空指针的错误。

如何避免空指针

1.字符串比较,常量放前

代码语言:javascript复制
if(status.equals(SUCCESS)){

}

这时候status可能为null会出现空指针异常,可以把常量放前面,就能避免空指针异常。

代码语言:javascript复制
if(SUCCESS.equals(status)){

}

2.初始化默认值

在对象初始化的时候给他一个默认值或者是默认构造实现

代码语言:javascript复制
User user = new User();
String name = StringUtils.EMPTY;

3.返回空集合

在返回一个集合的话,默认是null,统一规范返回一个空集合。

代码语言:javascript复制
public List getUserList(){
    List list = userMapper.getUserList();
    return list == null?new ArrayList():list;
}

4.断言 assert

断言是用来检查程序的安全性的,在使用之前进行条件检查,如果不符合条件就会报error,符合就继续。

代码语言:javascript复制
assert name == null:"name不能为null"

输出

代码语言:javascript复制
Exception in thread "main" java.lang.AssertionError:name不能为null

5.Optionl

jdk8新特性

of

代码语言:javascript复制
public static <T> Optional<T> of(T value){
    return new Optionl<>(value);
}

为value创建一个Optionl对象,如果value为空则会爆出空指针异常。

0 人点赞