如何使用java8实现以下功能

如何使用java8实现以下功能,java,Java,如何在java8中实现这一点,请任何人帮助我,我尝试使用流,但不工作可能是语法上的错误 我试过: list.stream().map(res->.get(s)).filter(res->res!=null && res.equalIgnoreCase("something")) 您可以使用新的java8Collection.removeIf()方法。该方法通过将实例中提供的条件应用于调用它的集合中的所有元素来工作。满足条件的元素将被保留,而其余元素将从集合中删除

如何在java8中实现这一点,请任何人帮助我,我尝试使用流,但不工作可能是语法上的错误

我试过:

list.stream().map(res->.get(s)).filter(res->res!=null && res.equalIgnoreCase("something")) 

您可以使用新的java8
Collection.removeIf()
方法。该方法通过将实例中提供的条件应用于调用它的集合中的所有元素来工作。满足条件的元素将被保留,而其余元素将从集合中删除

list.removeIf(item -> {
  String res = map.get(item);

  return res != null && res.equalsIgnoreCase("smt");
});

到目前为止你试过什么?这不是问答论坛。显示您的尝试请发布正确的代码,最后一个if条件不完整,以及
列表的类型声明是什么。您还应该包括您对streams所做的尝试。您的代码在if语句中遗漏了
。如果(res!=null&&res.equalIgnoreCase(“something”){…或
list.removeIf(item->map.containsKey(item)&&map.get(item.equalsIgnoreCase(“smt”);
@Naman,最好在映射上使用一个操作,而不是两个。在性能方面,您更喜欢使用
list.removeIf吗(item->“smt”.equalsIgnoreCase(map.get(item));
?@Naman它看起来更好,但是这一堆代码不是很明显。另一个程序员必须停下来想想这里发生了什么。