Java 有没有一种方法可以根据另一个字符串列表筛选出包含字符串元素的对象的列表中的元素
我有一个包含字符串元素的对象列表。现在还有另一个字符串列表Java 有没有一种方法可以根据另一个字符串列表筛选出包含字符串元素的对象的列表中的元素,java,string,list,Java,String,List,我有一个包含字符串元素的对象列表。现在还有另一个字符串列表List 我希望第一个列表只包含作为第二个列表元素的对象 最有效的方法是什么?您可以使用列表的contains()方法,这在您的情况下很方便,因为它将equals()检查字符串 e、 g 这将为您生成一个新的列表您应该有一个集合,而不是一个列表。@Jean-FrançoisCorbett我通过迭代列表来完成它,我认为这是最简单的解决方案。 List<String> otherList = new ArrayList<
List
我希望第一个列表只包含作为第二个列表元素的对象
最有效的方法是什么?您可以使用列表的
contains()
方法,这在您的情况下很方便,因为它将equals()
检查字符串
e、 g
这将为您生成一个新的
列表
您应该有一个集合
,而不是一个列表
。@Jean-FrançoisCorbett我通过迭代列表来完成它,我认为这是最简单的解决方案。
List<String> otherList = new ArrayList<>();
List<Object> test = new ArrayList<>();
Iterator<Object> it = test.iterator();
while(it.hasNext()){
if(!otherList.contains(it.next().getString())) it.remove();
}
test.stream().filter(e -> otherList.contains(e.getString()))
.collect(Collectors.toList());