使用Java 8迭代和过滤两个列表

阿伦·科特(Arun Khot):

我想迭代两个列表并获取新的过滤列表,该列表将具有第二个列表中不存在的值。有人可以帮忙吗?

我有两个列表-一个是字符串列表,另一个是MyClass对象列表

List<String> list1;
List<MyClass> list2;

MyClass {

    MyClass(String val)
    {
        this.str = val;
    }

     String str;
     ...
     ...
}

我想根据->检查第二个列表中的值不存在的元素(abc)过滤字符串列表list1

List<String> list1 = Arrays.asList("abc", "xyz", "lmn");

List<MyClass> list2 = new ArrayList<MyClass>();

MyClass obj = new MyClass("abc");
list2.add(obj);
obj = new MyClass("xyz");
list2.add(obj);

现在我想要新的过滤列表->将具有值=>“ lmn”。即在list2其元素中不存在的值list1

阿伦·科特(Arun Khot):

终于我有了实现以下方法的方法-

List<String> unavailable = list1.stream()
                .filter(e -> (list2.stream()
                        .filter(d -> d.getStr().equals(e))
                        .count())<1)
                        .collect(Collectors.toList());

但这也按预期工作。请让我知道这有效吗?如果有人有其他方法可以做同样的事情?

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Java的8两个列表流

如何使用数据流中的Java 8过滤器两个列表对象,并设定值新名单

使用比较过滤java8两个整形名单

如何比较两个ArrayList和GET列表1使用过滤器Java流

如何筛选使用Java 8个流两个列表对象?

通过比较两个列表过滤器 - Java的流8

迭代两个列表中找到匹配,返回布尔使用java8

使用Java 8个流在两个列表相同的位置比较元素

同时迭代两个列表,并创建另一个使用流

Java 8:按键合并两个包含对象的列表

Java 8:合并两个包含ID的对象的列表

Java 8 Lambda-两个列表的交集

合并Java 8中的两个对象列表

使用Java 8 Streams如何使用一个列表获取两个不同的列表

如何使用Java中具有不同类的两个对象和具有compare字段的列表进行过滤

使用Java8过滤两个列表

使用C#中的一个ForEach语句迭代两个列表或数组

在Java 8中迭代和映射两个列表

使用purrr函数并行迭代两个嵌套列表

如何使用运算符'and'和/或'or'映射两个过滤列表

R:使用lapply在两个列表上同时迭代一个函数?

使用列表理解过滤包含两个元素的子列表的列表

使用从两个列表中拉出的两个变量来迭代连接到API的一段代码

迭代两个列表进行过滤

使用两个参数过滤所有列表

使用Java Streams迭代两个相同的Set

Java 8 Lambda - 过滤两个 ArrayList

如何同时迭代 Java 中的两个列表?

基于 spark 和 Java 两个条件过滤列

TOP 榜单

热门标签

归档