我无法弄清楚与数组和循环相关的这个等式

时间:2016-10-14 18:25:56

标签: java arrays loops equation

我是通过edx参加在线java课程的,我的成绩是以下等式。

int[] array = new int[] {11, 22, 33, 44, 55};
double average = 0;
for (int element : array){
    average += element;
}
if (array.length > 0){
    average = average / array.length;
}
System.out.println(average);

我问的问题是什么?#34;它打印什么?",答案是33但是我花了3个小时试图计算它而我无法得到正确的答案我的生活。

1 个答案:

答案 0 :(得分:1)

  

但我花了3个小时试图计算它

这就是计算机被发明的原因......不,只是回答你的问题:

计算起来非常简单。你采取上半部分并将其添加到第二部分,如下所示:

11+55     +     22+44     +     33

所有这些(除了最后一个)都等于66。

因此,你总和66两次并加33,得到165。

将165除以5(数组中的值的数量)得到33。

您展示的代码只是执行此计算硬核(逐个求和所有值,然后除以数组长度)

这能解释为什么答案是33?