gpt4 book ai didi

java - 在 Java 8 中对多个数组使用流/函数式编程

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:08:17 24 4
gpt4 key购买 nike

我有 2 个数组,yz我想返回一个整数数组,其中 result[i] = y[i] - z[i]

代码如下:

static int[] join(int[] y, int[] z) {
int[] result = new int[Math.min(y.length, z.length)];
for(int i = 0; i < result.length; ++i) {
result[i] = y[i] - z[i];
}
return result;
}

但是我想使用 Java 的 8 种函数式编程技术(例如流)来做同样的事情。然而,我所知道的所有流函数一次只能用于一个列表。

我该怎么做?

编辑另外我怎么能做我提到的同样的事情但是我想返回一个 boolean 数组,其中: result[i] = y[i] == 5 || z[i] == 10

最佳答案

您可以使用 IntStream 通过计数器变量模拟迭代:

static int[] join(int[] y, int[] z) {
int min = Math.min(y.length, z.length);
return IntStream.range(0, min).map(i -> y[i] - z[i]).toArray();
}

关于java - 在 Java 8 中对多个数组使用流/函数式编程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31762647/

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