java - 为什么我不能将整数转换为 double ?

标签 java arrays average

我正在尝试计算数组的平均值,但无法将 int 转换为 double?为什么会发生这种情况?

private void AvgOfArray(){

            myWindow.clearOut();
            int total = 0;
            int[] a = new int[4];
            int i = 0;
            double avg = 0.0;
            while (i < a.length) {
                a[i] = 1 + (int) (Math.random() * 10);
                myWindow.writeOutLine(a[i]);
                total += a[i];
                i++;
            }
            avg = (Double) i;
            myWindow.writeOutLine(total/Double.parseDouble(i));


        }

最佳答案

计算平均值的正确方法是这样的,

double avg = total / (double) i;
myWindow.writeOutLine(avg);

int 装箱为 Double 没有多大意义,尤其是尝试解析它。

关于java - 为什么我不能将整数转换为 double ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36732957/

相关文章:

java - 如何优化 REST API 响应时间

java - VisualVM 分析正在污染结果

java - 导出处清洁问题

php - "Notice: Undefined variable"、 "Notice: Undefined index"、 "Warning: Undefined array key"和 "Notice: Undefined offset"使用 PHP

python - 如何在python中计算均值?

python - 字典中元组第一项的平均值

java - 从java代码连接到unix机器的连接池机制

c++ - 嵌套迭代器循环,为什么迭代器相等? -C++

javascript - 如何迭代数组中的所有数字并添加或减去它们以使它们达到预定值

MySQL获取10分钟间隔内按日期时间分组的平均值