使用Java 8模式匹配将地图转换为列表

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用Java 8模式匹配将地图转换为列表相关的知识,希望对你有一定的参考价值。

我需要将与Address1匹配的那些员工密钥存储到新的List<EmpData>,下面给出代码,我可以通过常规迭代来做到这一点。

我可以使用.collect和filter等进行Java8模式匹配吗?

public static void main(String[] args) {
    HashMap<String, List<EmpData>> map = new HashMap<>();
    map.put("Address1Emp1", new EmpData("100","Name1","25/05/1979");
    map.put("Address2Emp2", new EmpData("101","Name2","25/05/1970");
    map.put("Address1Emp3", new EmpData("102","Name3","25/05/1975");

    List<EmpData> listEmp = new ArrayList<>();
    //Need to store those employees key matching Address1 to a List<EmpData>

}
答案

您可以使用以下代码:

以上是关于使用Java 8模式匹配将地图转换为列表的主要内容,如果未能解决你的问题,请参考以下文章

在java 8中将地图映射转换为单个值列表[关闭]

将对象列表转换为映射Java 8流

通过流将带有列表的列表对象转换为Java 8中的映射[重复]

如何使用 Java 8 Lambda 将对象列表转换为 Map<Object, Object>

Java 8:将具有字符串值的映射转换为包含不同类型的列表

Java 8 流:迭代列表映射