ToB企服应用市场:ToB评测及商务社交产业平台
标题:
一文让你彻底了解java中Optional对象
[打印本页]
作者:
渣渣兔
时间:
2022-8-28 06:54
标题:
一文让你彻底了解java中Optional对象
转自:
http://www.java265.com/JavaCourse/202204/2854.html
下文笔者将详细讲述java中Optional对象,如下所示
Optional对象的功能:
可使用最简化的代码,并高效的处理NPE(Null Pointer Exception空指针异常)
复制代码
Optional对象的简介
Optional类是java为平时判断对象是否为空时使用
复制代码
例:
jdk8以前的写法
User user = new User();
if (null == user){
return "user为null";
}
jdk8以后可采用以下写法
User user = new User();
return Optional.ofNullable(user).orElse("user为null");
复制代码
Optional对象创建
// 1、创建一个包装对象值为空的Optional对象
Optional<String> optEmpty = Optional.empty();
// 2、创建包装对象值非空的Optional对象
Optional<String> optOf = Optional.of("optional");
// 3、创建包装对象值允许为空也可以不为空的Optional对象
Optional<String> optOfNullable1 = Optional.ofNullable(null);
Optional<String> optOfNullable2 = Optional.ofNullable("optional");
复制代码
Optional.get()方法(返回对象的值)
get()方法是返回一个option的实例值
public T get() {
if (value == null) {
throw new NoSuchElementException("No value present");
}
return value;
}
例:
User user = new User();
user.setAge(2);
Optional.ofNullable(person).get();
复制代码
Optional.isPresent()方法(判读是否为空)
isPresent()方法就是会返回一个boolean类型值,如果对象不为空则为真,如果为空则false
public boolean isPresent() {
return value != null;
}
User user = new User();
user.setAge(2);
if (Optional.ofNullable(user).isPresent()){
//写不为空的逻辑
System.out.println("不为空");
}else{
//写为空的逻辑
System.out.println("为空");
}
复制代码
Optional.ifPresent()方法(判读是否为空并返回函数)
如果对象非空,则运行函数体
[code] public void ifPresent(Consumer
欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/)
Powered by Discuz! X3.4