前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Java 避免空指针错误常用规范

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

作者头像
Kindear
发布2019-05-25 15:30:57
1.1K0
发布2019-05-25 15:30:57
举报
文章被收录于专栏:算法与数据结构

空指针的避免

对一个为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为空则会爆出空指针异常。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-05-12 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档