Java·带有lambda

时间:2017-10-02 18:39:05

标签: java matrix lambda boxing unboxing

经过大量搜索,我终于设法使用lambda表达式(double专门)将以下方法写入box和unbox原始数组:

public static Double[] box(double unboxed[]) {
    return Arrays.stream(unboxed).boxed().toArray(Double[]::new);
}

public static double[] unbox(Double boxed[]) {
    return Stream.of(boxed).mapToDouble(Double::doubleValue).toArray();
}

但是现在我需要对double[][]Double[][]做同样的事情,但我仍然不能理解lambda表达式以便提出解决方案,我也没有找到任何搜索。< / p>

实际上,由于其他原因,我最终需要将原始矩阵包装在一个类中,因此我不再需要这样做,但我认为有一个答案可供将来参考。

1 个答案:

答案 0 :(得分:2)

2D数组是一个数组数组 - 您可以对其进行流式处理,然后单独处理每个元素(本身就是一个数组)。这样做的一种相对简洁的方法是重复使用enumbox方法。

unbox