如何转换List <list <double>&gt;使用Java 8流API列出<double []>和List <double []>?

时间:2017-04-23 20:24:39

标签: java-8 java-stream

我遇到了这个问题。 我在这里找到了类似的答案,但没有一个能解决这个问题。 我应该在这里使用mapToDouble()吗?有什么像“mapToDoubleArray”吗?

1 个答案:

答案 0 :(得分:5)

要将List<List<Double>>转换为List<double[]>,您需要使用mapToDouble并结合toArray()(即“mapToDoubleArray”)将每个内部列表映射为双数组你正在寻找的手术)。

List<double[]> res = 
    myList.stream()
          .map(l -> l.stream().mapToDouble(d -> d).toArray())
          .collect(toList());

如果您想要List<Double[]>,则只需使用.map(list -> list.toArray(new Double[list.size()]))