1
Listで各要素の平方根の積を計算したいとしましょう。どのように私はPythonで同じことを達成することができ`Reduce`を使ったリスト内の平方根の積
24.0
: 同じことが
import java.util.ArrayList;
public class App {
public static void main(String[] args) {
ArrayList<Double> arrays = new ArrayList<>();
arrays.add(4.0);
arrays.add(9.0);
arrays.add(16.0);
double i = arrays.stream().reduce(1.0, (a, b) -> (a * Math.sqrt(b)),
(a, b) -> (a * b));
System.out.println(i);
};
}
出力のようにJavaで実現することができます。以下は間違っています。
>>> reduce(lambda a,b: math.sqrt(a)*math.sqrt(b), [4,9,16])
9.797958971132712
Javaで同じ構文が異なる結果を与えるが、それは
>>> math.sqrt(math.sqrt(4)*math.sqrt(9))*math.sqrt(16)
と同等なので。それはどのように計算されますか?
double i = arrays.stream().reduce(1.0, (a, b) -> (Math.sqrt(a) * Math.sqrt(b)));
出力:
8.23906857562847