Optional 类是一个可以为null的容器对象。如果值存在则isPresent()方法会返回true,调用get()方法会返回该对象。

Optional 是个容器:它可以保存类型T的值,或者仅仅保存null。Optional提供很多有用的方法,这样我们就不用显式进行空值检测。

Optional 类的引入很好的解决空指针异常。

下面为部分代码片段:

//stream().filter这个在前面有提过过滤出我们想要得元素,这里我想要m.getMoneytype等于"2"或者"3"的集合,findFirst取第一条
Optional<PrRentBillitem> first = prbList.stream().filter(m -> m.getMoneytype().equals("2") || m.getMoneytype().equals("3")).findFirst();
//first.isPresent中first存在则为true,我们这里!取反,没有值的时候走这里
if (!first.isPresent()) {
//构造定金数据
PrRentBillitem prsd = new PrRentBillitem();
prsd.setMoneytype(String.valueOf(c.getFaretypeId()));
prsd.setPlanprice(c.getNsrcfixmny());
longList.add(prsd);
}

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐