小编Hai*_*Hai的帖子

if/else in Reactive JDK 8

我是Reactive的新手.使用JDK 1.8,如何将这些命令式代码转换为Reactive风格.

List<int> evenArr, oddArr, arr;
// pretending 'arr' have some values, 'evenArr' & 'oddArr' have already init
for (int n : arr) {
    if (n%2) evenArr.add(n);
    else oddArr.add(n);
}
Run Code Online (Sandbox Code Playgroud)

现在我只想到两次搜索'arr',如:

arr.stream().filter(n -> n%2).foreach(evenArr::add);
arr.stream().filter(n -> n%2!=0).foreach(oddArr::add);
Run Code Online (Sandbox Code Playgroud)

还有其他方法吗?搜索'arr'两次是昂贵的.

java reactive-programming java-8 java-stream

2
推荐指数
1
解决办法
131
查看次数

标签 统计

java ×1

java-8 ×1

java-stream ×1

reactive-programming ×1