Live2D

hutool-Opt工具使用

1.引入maven依赖

<dependency>
    <groupId>cn.hutool</groupId>
    <artifactId>hutool-all</artifactId>
    <version>5.8.16</version>
</dependency>

2.使用

判断空值(null)并执行存在操作

代码

String str="";
Opt.ofNullable(str).ifPresent(s->{
    System.out.println("我是空字符串");
});
// peek 相当于 ifPresent
Opt.ofNullable(user).peek(User::getId).peek(User::getName).peek(u->{
    System.out.println(u.getAddress());
});

执行结果

我是空字符串
null
判断空值(null)并执行存在或者不存在操作

代码

 String str = null;
 Opt.ofNullable(str).ifPresentOrElse(s -> {
     System.out.println("我是空字符串");
 }, () -> {
     System.out.println("我是空");
 });

执行结果

我是空
判断空字符串或空值(null)

代码

String str = "";
 Opt.ofBlankAble(str).ifPresentOrElse(System.out::println,()->{
     System.out.println("hhhh");
 });

运行结果

hhh
抛异常
Opt.ofNullable(null).orElseThrow(NullPointerException::new,"空");
判断集合
List<Object> list = new ArrayList<>();
Opt.ofEmptyAble(list).ifPresentOrElse(System.out::println,()->{
    System.out.println("我是空集合");
});
取不到else
 User user = new User();
 Opt<User> userOptionalBean = Opt.of(user);
 // 获取姓名,获取不到则获取地址
 String name = userOptionalBean.map(User::getName).or(() ->  userOptionalBean.map(User::getAddress)).get();
 System.out.println(name);
posted @ 2023-05-11 14:30  没有梦想的java菜鸟  阅读(473)  评论(0编辑  收藏  举报