当前位置: 首页 > 知识库问答 >
问题:

基于lambda嵌套列表的过滤列表

湛鸿
2023-03-14

我有一个类似这样的组对象

public class Group { 
    private String mName;
    private List<Item> mItems;
}

和如下所示的Item对象

public class Item {
    private String mNumber;
}
firstList.stream()
.flatMap(group -> group.getItemList().stream())
.filter(item -> (
        // here I'm stuck. I think i need a stream of the second list or something?
        ))
.collect(Collectors.toList());

共有1个答案

芮博厚
2023-03-14

lastlist不包含

firstList.stream()
.flatMap(group -> group.getItemList().stream())
.filter(item -> (!lastList.countains(item)))
.collect(Collectors.toList());
 类似资料:
  • 基于 那个东西的 以下是我目前所尝试的: 我想使用一个Java8流和两个getter的lambdas来完成这一操作,这两个getter最终检索用于确定唯一性的属性,但不确定如何实现。当用于比较的属性位于pojo的顶层时,我知道如何做,但当属性嵌套在另一个对象中时,我不知道如何做。

  • 问题内容: 我有两个列表,我要过滤两个列表都包含的thoose元素。我想用lambda表达式做到这一点。 用户getName和客户端getUserName都返回String。 这是我的示例代码: 问题答案: 但这效率很低,因为它是O(m * n)。您最好创建一组可接受的名称: 还要注意,它并不严格等同于您拥有的代码(如果已编译),如果有多个用户具有与该客户端相同的名称,则该客户端会将同一客户端两次

  • 问题内容: 我在此论坛和Google中搜索后发布了查询,但无法解决相同的问题。 我正在尝试根据列表1中的值过滤列表2(多列)。 码 在上面的代码中,如果我提供特定值,则可以过滤,但不确定如何检查列表2中的Car Name是否在列表1中退出。 希望我面对的问题很清楚,等待指导(对于Java来说还是比较新的,因此,如果上述查询非常基础,请原谅)。 编辑, 我相信上面提供的链接3应该可以解决,但就我而言

  • 作为数独生成器的一部分,我有一个用于过滤嵌套列表的函数,以便只返回某些索引的内部列表以及这些列表中某些索引的内部列表元素。其思想是返回一个List[Int],其中包含一个3x3正方形的值,该正方形取自一个9x9数独拼图,表示为List[List[Int]],作为函数的参数提供。 我尝试了两种方法,但都未能始终如一地发挥作用。一种方法尝试从列表中筛选出某些子列表,然后从其余列表中筛选出项目。此函数完

  • 问题内容: 我碰巧发现自己有一个基本的过滤需求:我有一个列表,并且必须按项目的属性对其进行过滤。 我的代码如下所示: 但是后来我想,这样写会更好吗? 它更具可读性,并且如果需要性能,则可以取出以获得某些东西。 问题是:使用第二种方法是否有任何警告?有任何性能差异吗?我是否完全想念,应该以另一种方式来做到这一点(例如,使用而不是)吗? 问题答案: 我发现列表理解比 清晰得多,但请使用任何你更容易理解

  • 我试图用`stream,特别是嵌套的foreach循环,将以下代码重构为lambda表达式: 我的开头是: