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);
}
}
本文来自博客园,作者:HumorChen99,转载请注明原文链接:https://www.cnblogs.com/HumorChen/p/18039478