我是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'两次是昂贵的.