How to find average of elements in 2d array JAVA? [closed]

旧城冷巷雨未停 提交于 2019-12-02 13:39:56

try this:

Code:

public class AverageElements {
    private static double[][] array;

    public static void main (String[] args){

        //  Initialize array
        initializeArray();

        //  Calculate average
        System.out.println(getAverage());
    }   

    private static void initializeArray(){
        array = new double[5][2];
        array[0][0]=1.1;
        array[0][1]=12.3;
        array[1][0]=3.4;
        array[1][1]=5.8;
        array[2][0]=9.8;
        array[2][1]=5.7;
        array[3][0]=4.6;
        array[3][1]=7.45698;
        array[4][0]=1.22;
        array[4][1]=3.1478;
    }

    private static double getAverage(){
        int counter=0;
        double sum = 0;
        for(int i=0;i<array.length;i++){
            for(int j=0;j<array[i].length;j++){
                sum = sum+array[i][j];
                counter++;
            }
        }

        return sum / counter;
    }
}

Output:

5.452478000000001

If you want to to all in one line (two-dimensional int array):

Arrays.stream(array).flatMapToInt(Arrays::stream).average().getAsDouble();

If you deal with a two-dimensional double array:

Arrays.stream(array).flatMapToDouble(Arrays::stream).average().getAsDouble();

Since you asked so nicely! Here is the code:

public double Averagearray(double[][] array) {
    double total=0;
    int totallength;
    for(int i=0;i<array.length;i++) {
        for(int j=0;j<array[i].length;j++) {
            total+=array[i][j];
            totallength++;
        }
    }
    return total/(totallength);
}
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!