流2d数组,修剪值并收集回2d数组

问题描述 投票:0回答:1

任何想法如何对2d字符串数组执行修剪操作,例如3x3使用Java流API并收集一个返回相同尺寸的3x3数组?

重点是避免使用显式的for循环。

当前的解决方案是简单地执行一个for循环,如:

String arr[][] = {{"  word  ","  word  "},{"  word  ","  word  "},{"  word  ","  word  "}};

for (int i=0; i<arr.length; i++){
    for (int j=0; j<arr[i].length; j++){
        arr[i][j] = arr[i][j].trim
    }
}

这行得通,但我想尝试一种与流API相同的方法。

java multidimensional-array stream
1个回答
0
投票

您可以使用Arrays.stream像这样流式处理数组:

arr=Arrays.stream(arr).map(s -> Arrays.stream(s).map(a->a.trim()).toArray(String[]::new)).toArray(String[][]::new);

您可以先传输第一个维度,然后传输第二个维度。

© www.soinside.com 2019 - 2024. All rights reserved.