java - 尝试求数组平均值时出现逻辑错误

标签 java

我做了一个计算数组平均值的方法。不过我得到了奇怪的数字。当我构造一个由 1, 9, 5, 0, 7 组成的数组时,它说平均值是 3,它应该是 5,但我看不出我的方法有什么问题。

public static int Average(Array_one A) {
        int ave = 0;
        int[] a = A.values;
        for (int i = 0; i < A.size; i++) {
            double tmp = a[i] * 1.0;
            ave += (tmp / A.size);
        }
        return ave;

最佳答案

使用以下代码,平均值不是 5,而是 4.4。

import java.io.*;
public class Test {

   public static void main(String args[]) {

        double ave = 0;
        int[] a = {1, 9, 5, 0, 7};
        double tmp = 0;

        for (int i = 0; i < a.length; i++) {
            tmp += a[i];
        }
        ave += (tmp / a.length);
        System.out.println(ave);
   }
}

关于java - 尝试求数组平均值时出现逻辑错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50036143/

相关文章:

java - ActiveMQ/JMS - 如果消息发送失败,请勿重试

java - 当前使用 DynamoDBmapper 查询 GSI、按排序键排序并返回 n 个结果的方法?

java - 从 String 中删除不适合 UTF-8 编码的字符

Java 替换字符串匹配部分中的字符

java - Prowide-Core Library - 无法在 MT564 swift 消息中获取序列 E 标签

java - 使用 jxl api 将新列插入到现有的 excel 文件中

java - 如何持续观察对象直到 onError()/取消订阅

java - RediscacheManager 实例,Spring data redis 版本高于 2.0x

java - Calendar.get(Calendar.DAY_OF_MONTH) 返回错误的日期

java - NoClassDefFoundError : Could not initialize class sun. awt.X11FontManager