gpt4 book ai didi

java - 在 Java 中将 String[] 的所有元素转换为 int[] 的 Mapreduce 方法?

转载 作者:搜寻专家 更新时间:2023-11-01 01:51:26 24 4
gpt4 key购买 nike

您可以将 String 数组的所有元素转换为 int 并将它们存储在 int 数组中,如下所示:

public static final void main(String[] args) {
String input = "1 2 5 17 23 12 5 72 123 74 13 19 32";
String[] strAr = input.split(" ");

int[] output = parseIntArray(strAr);
}

private static int[] parseIntArray(String[] strAr) {
// convert to int[] one by one
int[] output = new int[strAr.length];
for (int i = 0; i < strAr.length; i++) {
output[i] = Integer.parseInt(strAr[i]);
}

return output;
}

如何在 Java 中以 map-reduce 方式编写 parseIntArray(String[]) 方法?

我听说在 Java 8 中有一种使用 lambda 执行此操作的简单方法。在 Java 8 之前是否也有一种 map-reduce 时尚方法来执行此操作?我知道这是两个问题合二为一;但是我相信它们之间的关系如此密切,社区最好将这两个答案放在一页上。

最佳答案

一种写法是:

private static int[] parseIntArray(String[] strAr) {
return Stream.of(strAr).mapToInt(Integer::parseInt).toArray();
}

你也可以直接从字符串开始:

private static final Pattern splitOnSpace = Pattern.compile(" ");

private static int[] parseIntArray(String str) {
return splitOnSpace.splitAsStream(str).mapToInt(Integer::parseInt).toArray();
}

关于java - 在 Java 中将 String[] 的所有元素转换为 int[] 的 Mapreduce 方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29606812/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com