小编ank*_*kpd的帖子

映射流的第一个元素与休息不同

Java的Stream API中是否有一种方法可以不同于其他方式映射流的第一个元素?

相当于这段代码:

List<Bar> barList = new ArrayList<>();

for (int i=0; i<fooList.size(); i++) {
    Foo foo = fooList.get(i);
    Foo modifiedFoo = foo.getModifiedFoo();
    if (i == 0) {
        barList.add(new Bar(modifiedFoo, false));
    }else {
        barList.add(new Bar(modifiedFoo, true));
    }
}

Stream<Bar> = barList.stream();
Run Code Online (Sandbox Code Playgroud)

注意:我已经有了一个流设置,我希望在第一次映射后进行一些操作

fooList.stream()
        .map(Foo::getModifiedFoo)
        .(May be Some operation here to get different new Bar for first modifiedFoo)
        .map(modifiedFoo -> new Bar(modifiedFoo, true));
Run Code Online (Sandbox Code Playgroud)

java-8 java-stream

4
推荐指数
1
解决办法
1100
查看次数

标签 统计

java-8 ×1

java-stream ×1