Java: avoid checking for null in nested classes (Deep Null checking)

前端 未结 11 452
失恋的感觉
失恋的感觉 2020-12-05 09:12

Imagine I have a class Family. It contains a List of Person. Each (class) Person contains a (class) Address. Each (class) Address contains a (class) PostalCode. Any "i

11条回答
  •  有刺的猬
    2020-12-05 10:13

    If, in case, you are using java8 then you may use;

    resolve(() -> people.get(0).getAddress().getPostalCode());
        .ifPresent(System.out::println);
    
    :
    public static  Optional resolve(Supplier resolver) {
        try {
            T result = resolver.get();
            return Optional.ofNullable(result);
        }
        catch (NullPointerException e) {
            return Optional.empty();
        }
    }
    

    REF: avoid null checks

提交回复
热议问题