Optional使用记录

简介: Optional使用记录
List<BizGift>results=Optional.ofNullable(giftName)
      .map(name->bizGiftService.list(Wrappers.<BizGift>lambdaQuery().likeRight(BizGift::getGiftName, name)))
      .orElse(Lists.emptyList());

解释:


  • Lists.emptyList() :是Collections类的一个静态内部类,不能进行增删操作,返回一个不可变列表,此方式不需要创建对象 减少内存开销,并且返回一个size为0的list,不需要效验返回值为null。(emptySet()、emptyMap()方法同理)
  • Optional.ofNullable(giftName):判断giftName是否为null,不为null正常返回,为null时走orElse(Lists.emptyList())。
Optional.ofNullable(descs).ifPresent(s->orderItemList.addAll(Arrays.stream(s)
      .filter(sqlInjectPredicate())
      .map(OrderItem::desc).collect(Collectors.toList())));
  • .ifPresent() : 判断descs中是否有值,如果对象不是空的,就会执行传入的 Lambda 表达式。
  • .map() : 映射, 返回一个值
  • flatmap():映射,返回多个值
  • .filter():判断条件过滤,if(Object.getStatus()  != 0)等同于 Object.filter(a -> a.getStatus() != 0)
目录
相关文章
|
4月前
|
数据安全/隐私保护
[MoeCTF 2022]fake_key-入土为安的第二十天
[MoeCTF 2022]fake_key-入土为安的第二十天
46 0
|
存储 数据库
ODOO中的Related字段及Computed字段原理
难理解的参数: Store = True 原因:ODOO 默认情况下不存储计算字段。(因为,可以减少数据库的开销)。但你知道的, 当您希望能够执行某个函数,需要从数据库中调用此值时,这会导致问题。要修复此问题,odoo 在计算字段上提供 store=true 标志。
3587 0
如何快速核对未到场的人数名字EXCEL
如何快速核对未到场的人数名字EXCEL
|
Java Scala
全面探索Optional类型
全面探索Optional类型
全面探索Optional类型
|
Java 测试技术 API
Optional 是个好东西,你真的会用么?
在文章的开头,先说下NPE问题,NPE问题就是,我们在开发中经常碰到的NullPointerException.假设我们有两个类,他们的UML类图如下图所示
Optional 是个好东西,你真的会用么?
SAP MM 采购申请中的物料组字段改成Optional
SAP MM 采购申请中的物料组字段改成Optional
SAP MM 采购申请中的物料组字段改成Optional
|
SQL 关系型数据库 MySQL
4.1.4 统计“锦途网”旅游线路平均价格,并采用尽可能多的方式将该价格赋给用户会话变量 @avg_short_price,并输出该变量
4.1.4 统计“锦途网”旅游线路平均价格,并采用尽可能多的方式将该价格赋给用户会话变量 @avg_short_price,并输出该变量
110 0
|
数据库
使用 scope_identity() 函数获得表的标识值
做开发的时候,我们经常要在执行一条语句后 获得数据库的自增ID值,最典型的例子就是在生成订单后,要返回订单ID,之前有一种不严谨的做法是,用select top 1 ID order by ID desc,值所以不严谨有一种说法是,在高并发用户的情况下,很可能在插入和查询之间又一次进行了插入操作,这样查询的结果就和实际ID不是对应的了。
917 0
|
容器 编译器 Java
Optional源码分析(未完)
Optional源码分析(未完) Optional 类是Java8的新特性,Optional是一个可以为null的容器对象。如果值存在则isPresent()方法会返回true,调用get()方法会返回该对象。
936 0