Optional null 值的处理的方法:
1、 Optional.of( T ) 不充许 null 值,如果是null值时跳出错误,用于程序中null的判断修正。
2、Optional.ofNullable(T) 充许 null 值
3、Optional.ofNullable(T) .orElse(T) 在null值时,返回一个批定的对象
下面是测试代码:
public class OptionalDemo {
private String inof = "";
/**
*
*/
public OptionalDemo() {
// TODO 自动生成的构造函数存根
}
public OptionalDemo(String strinfo) {
// TODO 自动生成的构造函数存根
this.inof = strinfo;
}
/**
* @return inof
*/
public String getInof() {
return inof;
}
/**
* @param inof 要设置的 inof
*/
public void setInof(String inof) {
this.inof = inof;
}
/**
*
*/
public String toString() {
return this.inof;
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO 自动生成的方法存根
OptionalDemo op = null;
if (op == null) {
System.out.println("为null值");
}
// 方法1: 明确 null值时出错
// 空值指向错误 java.lang.NullPointerException
// Optional.of(op); // 取消注释,会明确出错
// 方法2:
// 如果是null 值 时, orElse 返回新的OptionalDemo实例
op = Optional.ofNullable(op).orElse(new OptionalDemo("新的对象发出的信息"));
System.out.println(op);
}
}