RxJava:从列表中删除元素

时间:2017-11-21 05:54:27

标签: java android rx-java reactive-programming rx-java2

我尝试使用$date=$_POST['today']; $alter="ALTER TABLE cse145takeattendance ADD '$date' date;"; mysqli_query($s,$alter) or die ("Error in column alter :$alter"); mapconcatMap来迭代对象的各种运算符,但我无法从列表中删除元素。

这是一段代码:

all

我想要的只是检查条件然后从列表中删除对象。

1 个答案:

答案 0 :(得分:2)

在函数式编程中,您正在使用流。您不必从初始输入中删除项目,而是必须过滤流本身并将过滤后的列表传递给使用者。

似乎这就是你要找的东西:

Observable.fromIterable(listOfElements)
          .filter(element -> {
              if (element.isValid()) {
                  // do some action with valid `element`
                  // NOTE: this action would be performed with each valid element
                  return true;
              } else {
                  // `element` is not valid, perform appropriate action
                  // NOTE: this action would be performed for each invalid element
                  return false;
              }
          })
          .toList() // collect all the filtered elements into a List
          .subscribe(
                  filteredElements -> /* use `filteredElements` which is List<Element> */, 
                  throwable -> /* perform appropriate action with this `throwable`*/)
          );