使用Optional更优雅地处理非空判断 |
您所在的位置:网站首页 › 人民银行调研员是什么级别 › 使用Optional更优雅地处理非空判断 |
听说微信搜索《Java鱼仔》会变更强哦! 本文收录于github和gitee ,里面有我完整的Java系列文章,学习或面试都可以看看哦 (一)引言在平常的编码之中,有一个错误总会在你的意料之外出现,那就是空指针异常。空指针的出现也很简单,你得到了一个null对象,调用了一些方法,出现空指针异常。空指针会出现在各种地方,常见的比如Map.get()没有获取到对象就调用对象例的方法,类对象没有获取到就调用类中的方法。 空指针的处理方式也很多,最简单的方式就是用if/else判空,但是这样就会显得代码特别繁琐。这篇文章就带你用JDK8中的Optional来解决空指针异常。 (二)什么是OptionalOptional类是Java 8的新特性,是一个可以为null的容器对象,Optional的使用很简单,介绍几种常用的方法: Optional.of():传递参数,如果of中的对象是null,就报空指针异常。 Optional optional = Optional.of() 复制代码Optional.ofNullable():允许ofNullable传递null对象 Optional optional = Optional.ofNullable(); 复制代码Optional.empty():返回空的Optional实例 Optional optional = Optional.empty(); 复制代码optional.isPresent():判断Optional实例是否为空 optional.isPresent() 复制代码optional.orElse():如果optional为空的话返回orElse中的对象 optional.orElse() 复制代码optional.get():获取optional中的T对象 optional.get(); 复制代码optional.map():如果optional不为null,则执行map方法中的映射函数得到返回值。 optional.map(Function |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |