所以我有一个有序列表,我试图根据条件获取下一个项目(即通过列表直到找到项目,然后只获取下一个项目。)
List<Integer> items = Arrays.asList(new Integer[]{1,2,3,4,5});
Observable.from(items).filter(i -> i == 3) //.something here to get 4 after we match 3
如果不使用状态/外部变量等,这是最不痛苦的方法。
答案 0 :(得分:1)
可以使用skipWhile完成解决方案并执行
@Test
void name() throws Exception {
List<Integer> items = Arrays.asList(1, 2, 3, 4, 5);
Flowable.fromIterable(items)
.skipWhile(integer -> integer != 3)
.take(2)
.test()
.assertValues(3, 4);
}