java - Eclipse - 基本数组

标签 java arrays eclipse average

说明: 创建一个常规类,其中一个静态方法可以 处理一维数组: • 接受一维数组并返回 元素的平均值。

package com.array; //THIS IS A REGULAR CLASS

public class oneDimensional
{
int[] x = {1,2,3,4,5};

static void printElements(int[] x)
{
    for(int i = 0; i < x.length; i++)
    {
        System.out.print(x + " ");
    }
}

int getSum(int[] x)
{
    int sum = 0;
    for(int elements : x)
    {
        sum = (sum + elements)/x.length;
    }
    return sum;
}}



package com.array; //MAIN METHOD
import java.util.Arrays;
public class Test {
    public static void main(String[] args) {
        int[] Elements = {1,2,3,4,5};
        oneDimensional onedime = new oneDimensional();  
        System.out.println(Arrays.toString(Elements));
        int sum = onedime.getSum(Elements);
    System.out.println();
    System.out.println("Sum: " + sum);
}

}

我不知道为什么输出(平均值)是1。它应该是3,而不是1。

最佳答案

您正在使用整数除法,因此您缺少每个除法的非整个部分。

一般来说,一系列 int 的平均值不需要是 int 本身。您应该使用double来代替:

double getAvergage(int[] x) {
    double sum = 0;
    for (int element : x) {
        sum += element;
    }
    return sum / x.length;
}

关于java - Eclipse - 基本数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55076495/

相关文章:

Android:针对 res 文件夹,用于在 eclipse 中进行调试

java - org.springframework.beans.factory.BeanCreationException : Error creating bean with name 'triangle' defined in class path resource

java - 是否可以使用 sql server 2000 和 java 1.4 将 arraylist 对象传递给 sql 过程?

java - 为什么在大型数组上使用 Arrays.sort(Object[] a) 时没有出现 StackOverflowError?

c - 使用结构体添加两个二维数组时出现段错误 11

java - 使用 eclipse 命令行进行增量构建

eclipse - 使用 RSE 链接文件夹时,如何在 Eclipse 项目资源管理器中显示隐藏文件?

java - 执行 attach-javadocs of goal org.apache.maven.plugins :maven-javadoc-plugin:3. 0.0:jar failed with Java10

java - 防止 java 变压器被替换

javascript - 在javascript文件中存储一个数组并在另一个文件中使用它