网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

Optional.ofNullable如何处理空指针

这篇文章将为大家详细讲解有关Optional.ofNullable如何处理空指针,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

剑河网站建设公司成都创新互联,剑河网站设计制作,有大型网站制作公司丰富经验。已为剑河成百上千提供企业网站建设服务。企业网站搭建\外贸网站制作要多少钱,请找那个售后服务好的剑河做网站的公司定做!

  • 对于 Integer 的判空,可以使用 Optional.ofNullable 来构造一个 Optional,

    • 然后使用 orElse(0) 把 null 替换为默认值再进行 +1 操作。

  • 对于 String 和字面量的比较,可以把字面量放在前面,

    • 比如"OK".equals(s),这样即使 s 是 null 也不会出现空指针异常;

  • 而对于两个可能为 null 的字符串变量的 equals 比较,

    • 可以使用 Objects.equals,它会做判空处理。

  • 对于 ConcurrentHashMap,既然其 Key 和 Value 都不支持 null,修复方式就是不要把 null 存进去。

    • HashMap 的 Key 和 Value 可以存入 null,

    • 而 ConcurrentHashMap 看似是 HashMap 的线程安全版本,却不支持 null 值的 Key 和 Value,

    • 这是容易产生误区的一个地方。

  • 对于类似 fooService.getBarService().bar().equals(“OK”) 的级联调用,

    • 需要判空的地方有很多,包括 fooService、getBarService() 方法的返回值,以及 bar 方法返回的字符串。

    • 如果使用 if-else 来判空的话可能需要好几行代码,

    • 使用 Optional 的话一行代码就够了

  • 对于 rightMethod 返回的 List,

    • 由于不能确认其是否为 null,

    • 所以在调用 size 方法获得列表大小之前,同样可以使用 Optional.ofNullable 包装一下返回值,

    • 然后通过.orElse(Collections.emptyList()) 实现在 List 为 null 的时候获得一个空的 List,最后再调用 size 方法。

关于“Optional.ofNullable如何处理空指针”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。


网站标题:Optional.ofNullable如何处理空指针
文章地址:http://bjjierui.cn/article/poiogo.html

其他资讯