此方法的目的是查找骑车过程中的平均速度。我已经有了方法speeds()
,该方法返回存储在双精度数组中的GPS点之间的平均值。我试图使用一个for循环和一个“加与赋”来将这些值相加并将它们存储在一个双变量totalOfSpeeds
中。由于某些原因,这些值不会相加,而是totalOfSpeeds
的值对于for循环的每个“回合”都会改变,就好像我使用了常规的=
分配一样。任何帮助,将不胜感激。
double averageSpeed() {
double average = 0;
double [] avgSpeedsCopy = Arrays.copyOf(speeds(), speeds().length);
double totalOfSpeeds = 0;
for(int i = 0; i < speeds().length; i++) {
totalOfSpeeds =+ avgSpeedsCopy[i];
}
average = totalOfSpeeds/speeds().length;
return average;
}
答案 0 :(得分:2)
一旦修复了指出的错字问题,您的for-loop解决方案就不错了。您也可以使用流将此行一行。
DoubleStream.of(arr).average().getAsDouble()