在数组中查找高于平均数的数字

时间:2016-11-10 00:45:37

标签: java arrays if-statement for-loop

我试图找出为什么我的代码不会允许我正确打印数组中高于平均值的任何值。我查看了另一个具有类似问题的用户的stackoverflow示例,但它仍然没有意义。我甚至不了解高于平均值的当前输出值。

如何在数组中打印高于所有数组值的计算平均值的值?

我很感激帮助。

我的代码:

Average of income array: 89
There are 2 numbers above the average.
Range of numbers above the average: [I@15db9742

我的输出:

{{1}}

2 个答案:

答案 0 :(得分:0)

在最后一行中具有基址的数组的名称

System.out.println("Range of numbers above the average: " + income);

打印名称只会打印一些数组的地址而不是任何值。因此,如果你需要获取值,你必须像这样打印

income[<index>] eg. income[1] , income[2]

现在关于您希望打印所有大于平均值的值。 只需将它打印到与平均值比较的位置即可。 所以这是代码。

    for (int i = 0; i < income.length; i++)
     {
         if (income[i]>average)
         {
             aboveAverage++;
             System.out.println("Number above the average: " + income[i]);

         }
     }

我希望它有所帮助。

答案 1 :(得分:-1)

您正在打印数据值(我认为这就是它所称的)...

System.out.println(Arrays.toString(array));

或为你

System.out.println(Arrays.toString(income));

这对你有用!