Java 8迭代嵌套循环并获取详细信息

问题描述

我有一个包含嵌套数组的模型对象,我想在该模型中检索一些详细信息。如何将属性msg从subscriberCriteriaList收集到一个数组中,subscriberCriteriaList.status为FAIL。我希望Java 8解决方案也一样吗?下面是示例模型对象和相应的json结构。

public class Data{
private List<subscriberList> subscriberCriteriaList;

}

public class subscriberList{

private String mdn;
private List<SubscriberCriteriaList> subscriberCriteriaList;

}

public class SubscriberCriteriaList{

private String status;
private String msg;

}

示例json结构

   {
"subscriberList": [
  {       
    "mdn": "string","subscriberCriteriaList": [
      {
        "status": "FAIL","msg": "error message"
      }
    ]
  }
]
}

解决方法

假设顶级对象的类型为Data,并且在所有提到的类中都有适当的getters,则可以将flatMap应用于嵌套列表并按{{1}进行过滤}值:

status