实用 Java Streams API

1. 快速过滤空值:Stream.ofNullable

该方法是在 Java 9 中引入的,有助于过滤集合中的所有空值,从而可能使我们避免空指针异常。

在下面的示例中,有一个包含 null 的List。此时,我们可以使用Stream.ofNullable方法对其进行过滤。

List<String> names = Arrays.asList("Alice", null, "Bob", null, "Charlie");
List<String> nonNuLLNames = names.stream()
    .flatMap(Stream::ofNullable)
    .collect(Collectors.toList());
System.out.println(nonNuLLNames);

执行上述代码,将输出:

[Alice, Bob, Charlie]

2. 流式迭代:Stream.iterate()

Stream.iterate()方法用于创建无限的序列流。它采用种子和一元函数,将函数应用于前一个元素。

在下面的例子中,我们的种子是0,一元运算函数是 n -> n+2。

Stream.iterate(seed: 0, n -> n+2)
    .Limit( maxsize: 10)
    .forEach(e-> {
        System,out printin(e)
    });

执行上述代码,将输出:

0
2
4
6
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值