如何编写简洁的代码,将给定的整数数组转换为由取自第一个数组的数字的倒数组成的数组:
[1, 2, 4, ...] -> [1.0, 0.5, 0.25, ...]
我发现流(如 IntStream、DoubleStream)很有用,我想使用它们,但我无法处理类型(Int -> Double)。
我能够处理类似的问题,但对于将整数转换为整数的函数:下面是函数 x->10x+1
而不是 x->1/x
:
Stream.of(1, 2, 3).map(i -> 10*i+1).forEach(System.out::println);
是否有可能找到类似 x->1/x 或其他“复杂”函数的东西,例如 exp()
或 ln()
?
最佳答案
Stream.of(1, 2, 3).mapToDouble(i -> 1.0 / i /* or whatever */)
.forEach(System.out::println);
关于java - 如何使用具有给定整数数组的 IntStream 生成反转整数数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55937263/