当前位置: 首页 > 面试题库 >

Java 8:使用流API合并列表

上官淮晨
2023-03-14
问题内容

我有以下情况

Map<Key, ListContainer> map;

public class ListContainer{
  List<AClass> lst;
}

我已经合并所有列表lstListContainer从对象Map地图。

public static void main(String args[]){
   List<AClass> alltheObjectsAClass = map.values().stream(). // continue....    
}

知道如何使用Java 8流API吗?


问题答案:

我想flatMap()这就是您要寻找的。

例如:

 List<AClass> allTheObjects = map.values()
         .stream()
         .flatMap(listContainer -> listContainer.lst.stream())
         .collect(Collectors.toList());


 类似资料:
  • 我有以下情况 我必须合并所有列表从映射的对象。 知道如何使用Java8流API吗?

  • 我有两个(或更多)

  • 我试图使用

  • 我认为流API在这里是为了使代码更易于阅读。我觉得有点烦。流接口扩展了java。lang.AutoCloseable接口。 因此,如果你想正确地关闭流,你必须使用try-with资源。 清单1.不是很好,流没有关闭。 清单2.使用2嵌套try 清单3。当map返回流时,必须关闭stream()和map()函数。 我举的例子毫无意义。为了示例,我将jpg图像的路径替换为整数。但不要让这些细节分散你的

  • 我有一张这样的清单 其中Objecto是此类型的对象 //接球手和接球手 } 我想将列表合并成如下的哈希图 我可以使用java 8 lambda来实现它吗?或者通过任何其他方式? 非常感谢!

  • 我该怎么解决这个烂摊子? 提前致谢