代码之家  ›  专栏  ›  技术社区  ›  maheryhaja

将Java8 IntStream收集到Deque接口中

  •  12
  • maheryhaja  · 技术社区  · 7 年前

    如何将Java8 IntStream收集到 Deque 界面 我可以用这样的列表执行这种操作:

    List<Integer> integerList = IntStream.of(1, 2, 3)
                                         .boxed()
                                         .collect(Collectors.toList());
    
    2 回复  |  直到 7 年前
        1
  •  17
  •   Eugene    7 年前

    你不能收集到一个接口,而是收集到它的一个实现(只要它是一个 Collection )通过 Collectors.toCollection

     Deque<Integer> d = IntStream.of(1, 2)
                .boxed()
                .collect(Collectors.toCollection(ArrayDeque::new));
    
        2
  •  7
  •   Ousmane D.    7 年前

    使用 Collectors.toCollection 要指定所需的集合,例如:

    .collect(Collectors.toCollection(ArrayDeque::new));
    

    或任何其他实施 Deque 界面