天道不一定酬所有勤
但是,天道只酬勤

求求你,不要再使用!=null判空了!

GitHub 19k Star 的Java工程师成神之路,不来了解一下吗!

本文来自作者投稿,原作者:上帝爱吃苹果

对于Java程序员来说,null是令人头痛的东西。时常会受到空指针异常(NPE)的骚扰。连Java的发明者都承认这是他的一项巨大失误。

那么,有什么办法可以避免在代码中写大量的判空语句呢?

有人说可以使用 JDK8提供的 Optional 来避免判空,但是用起来还是有些麻烦。

作者在日常工作中,封装了一个工具,可以可以链式调用对象成员而无需判空,相比原有的if null逻辑 和 JDK8提供的 Optional 更加优雅易用,在工程实践中大大提高了编码效率,也让代码更加的精准和优雅。

不优雅的判空调用

我想从事Java开发的小伙伴肯定有遇到过下面这种让人难受的判空逻辑: 现在有一个User类,School 是它的成员变量

/**
* @author Axin
* @since 2020-09-20
* @summary 一个User类定义
 * (Ps:Data 是lombok组件提供的注解,简化了get set等等的约定代码)
*/
@Data
public class User {

    private String name;

    private String gender;

    private School school;

    @Data
    public static class School {

        private String scName;

        private String adress;
    }
}

现在想要获得School的成员变量 adress , 一般的处理方式:

Hollis为了防爬虫以及未经授权的恶意转载,此处内容已被作者隐藏,请输入验证码查看内容
验证码:
请关注本站微信公众号,回复“验证码”,获取验证码。在微信里搜索“Hollis”或者“hollischuang”或者微信扫描右侧二维码都可以关注本站微信公众号。

(全文完)

扫描二维码,关注作者微信公众号
赞(16)
如未加特殊说明,此网站文章均为原创,转载必须注明出处。HollisChuang's Blog » 求求你,不要再使用!=null判空了!
分享到: 更多 (0)

评论 2

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
  1. #1

    OptionalBean的全部定义在哪里?

    green2个月前 (11-12)回复
  2. #2

    我觉得你的这个例子很好地启发了使用函数式编程

    green2个月前 (11-12)回复

HollisChuang's Blog

联系我关于我