我想根据用户的查询过滤List<Object>
,然后将List<Object>
返回给他/她。我发现了如何过滤项目但问题是我不知道不知道如何返回List<Object>
。我也看到了一些迭代并每次调用flatMap
的方法但是我认为这不是一种优雅的方式。
这是我的最后一次尝试:
Observable.from(my_list_of_object)
.debounce(500, TimeUnit.MILLISECONDS)
.filter(new Func1<MyObject, Boolean>() {
@Override
public Boolean call(MyObject o) {
return o.getName().contains(query); //filtering
}
})
.observeOn(Schedulers.computation())
//problem is here and I dont know how
//to convert filtered Item to list
答案 0 :(得分:13)
只需使用toList()
运算符即可。
查看documentation.
Observable.from(my_list_of_object)
.debounce(500, TimeUnit.MILLISECONDS)
.filter(new Func1<MyObject, Boolean>() {
@Override
public Boolean call(MyObject o) {
return o.getName().contains(query); //filtering
}
})
.toList()
.observeOn(Schedulers.computation())
您可以找到更广泛的聚合运算符列表here。