Java Optional类的简单使用
一、了解什么是Optional类
Optional类是Java8之后的新特性,主要是为了解决空指针异常(NullPointerException),也就是为了解决null值判断问题。
Optional本质上是一个可选值的包装类,所以Optional类可以是任意类,既可以为null。
Optional类常用的方法:
二、简单举例说明
1.Optional类可以通过of(T value)方法直接判断对象是否为空。
@Test
public void fun01(){
Optional<User> optional = Optional.of(null);
User user = optional.get();
System.out.println(user);
}
2.由于对象可能为空,所以使用ofNullable(T value)方法创建对象,如果参数为null,则创建一个空对象。
@Test
public void fun02(){
Optional<User> optional = Optional.ofNullable(null);
User user = optional.orElseGet(()->new User());//Lambdas表达式,箭头函数(Java8新特性)
System.out.println(user);
}
3.Optional类为了预防对象为空,做了防御性检查,如果为空可以返回自定义的value。
@Test
public void fun03(){
User user = new User();
String username = Optional.ofNullable(user).map(u->u.getUsername()).orElse("Freddiefang");
System.out.println(username);
}
三、总结
Optional类的补充有助于减少代码中的NullPointerExceptions,自然的融入了Java8函数式支持。
Optional类有助于我们创建简单、可读性更强、比对应程序错误更少的程序。
ptions,自然的融入了Java8函数式支持。
Optional类有助于我们创建简单、可读性更强、比对应程序错误更少的程序。
我对于Optional的了解也是从Optional实现方法中需要get()中学习了解到的,至于源码方面的就不过多分析了,多有不妥之处欢迎指出。