Rxjava 对象过滤列表
Filter list of Object in Rxjava
我想根据来自用户的 查询 过滤 List<Object>
,然后 return List<Object>
到 him/her。我发现出如何过滤项目但问题是我不知道如何 return 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
只需使用 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。
我想根据来自用户的 查询 过滤 List<Object>
,然后 return List<Object>
到 him/her。我发现出如何过滤项目但问题是我不知道如何 return 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
只需使用 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。