java取值防止null不报错优雅写法(四种写法对比)

在开发过程中经常会遇到调用一些方法可能收到null 的返回,我们可以使用Optional类来优雅处理
// 当getCount()返回null时会自动返回0且不报错,若使用of创建,遇到null值则会报错
Integer count = Optional.ofNullable(getCount()).orElse(0);

四中写法对比

public class TempTest {
    public Integer getCount() {
        return System.currentTimeMillis() % 2 == 0 ? null : 1;
    }

    @Test
    public void test2() {
        // 原始写法1
        Integer count1 = getCount();
        if (count1 == null) {
            count1 = 0;
        }
        System.out.println(count1);

        // 原始写法2
        Integer count2 = getCount();
        count2 = count2 == null ? 0 : count2;
        System.out.println(count2);
        
        // 原始写法缩写后版本
        Integer count3 = (count3 = getCount()) == null ? 0 : count3;
        System.out.println(count3);

        // optional写法
        Integer count4 = Optional.ofNullable(getCount()).orElse(0);
        System.out.println(count4);
    }
}
posted @   HumorChen99  阅读(41)  评论(0编辑  收藏  举报  
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
点击右上角即可分享
微信分享提示