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

在Java8中,如何从对象列表中提取对象?

朱承载
2023-03-14

我有一个对象列表(文件夹)。该列表中的每个对象A都有一个对象B(合作伙伴)列表,对象B也有一个对象C(人员)列表。对象C包含一个属性代码,我想用它来使用Java8进行过滤。

我试过下面的代码,但它似乎不工作:

A objectA = new A();
String code = "O";
for (A a: listObjectsA) {
    for (B b: a.getPartners()) {
        for (C c: b.getPersonnes()) {
            if (c.getCode().equalsIgnoreCase(code)) {
                objectA = a;
                break;
            }
        }
    }
}

你们知道我如何使用FlatMap从List进行这种转换吗?


共有1个答案

丌官哲彦
2023-03-14

它不起作用,因为break指令只停止了for循环的最后一个

你可以使用break和一个标签来精确地停止你想要的循环。

A objectA = new A();
String code = "O";
loopA: for (A a: listObjectsA) {
    for (B b: a.getPartners()) {
        for (C c: b.getPersonnes()) {
            if (c.getCode().equalsIgnoreCase(code)) {
                objectA = a;
                break loopA;
            }
        }
    }
}

 类似资料:
  • 问题内容: 我有一个对象列表。对象具有3个字符串属性。我想制作一个仅包含类中特定属性的列表。 有内置的功能可以做到这一点吗? 问题答案: 列表理解会很好地工作: 但是,由于您要求:-),所以有内置功能的组合。

  • 问题内容: 我在python中有一个 统一 的对象列表: 现在,我想提取一个具有该类某些属性的列表(比如attr),以便将其传递给某个函数(例如用于绘制该数据) pythonic的做法是什么, ? 也许派生列表并添加一个方法,所以我可以使用一些习惯用法,例如 ? 问题答案: 您还可以编写: 这样,您将获得一个节省内存的生成器。有关更多好处,请参见Generator Expressions 。

  • 我想将所有Firebase子级转换为android中的列表。 像这样的东西:

  • 假设我有一个雇员对象列表,每个雇员类都有雇员姓名、雇员地址、工资等属性。现在我必须删除名称为“John”和Salary的雇员对象 列表empList=new ArrayList 根据我的理解,若要解雇具有上述情况的员工,我应使用以下代码: 因此,基本上上述代码将从列表中删除所需的Employee对象。如果我的理解正确,请告诉我。 除此之外,请澄清以下几点:1.当我们有数百万条记录时,我们将如何解决

  • 我有这样的课: 和类似的列表,其中填充了元素。 如何使用Java8获得的最小值和最大值?