如何从 Java 中的函数获取输出?

How to get output from a function in Java?

我有一个调用此函数的主程序:

public static void eucDist(int i, double data[][], double weight[][]) {

    double sum = 0; 
    double min = 10000;

    for (int j=0; j<5; j++) {
        for (int k=0; k<5; k++) {
            sum = sum + Math.pow((weight[k][j] - data[i][k]),2);
        }

        double dist = Math.sqrt(sum);

        if(dist < min) {
            min = dist;
            int saveCol = j;
        }
    }
}

如何在主程序中获取saveCol

如果我把

public int getsaveCol(){
    return saveCol;
}

所以我可以用 eucDist.saveCol 调用 saveCOl 但它 returns 是一个错误。

你可以return它:

public static int eucDist(int i, double data[][], double weight[][]) {

    double sum = 0; 
    double min = 10000;
    int saveCol = -1;

    for (int j=0; j<5; j++) {
        for (int k=0; k<5; k++) {
            sum = sum + Math.pow((weight[k][j] - data[i][k]),2);
        }

        double dist = Math.sqrt(sum);

        if(dist < min) {
            min = dist;
            saveCol = j;
        }
    }
    return saveCol;
}

您可以 return saveCol 来自 eucDist

public static int eucDist(int i, double data[][], double weight[][]) {

    double sum = 0; 
    double min = 10000;
    int saveCol = 0;

    for (int j=0; j<5; j++) {
        for (int k=0; k<5; k++) {
            sum = sum + Math.pow((weight[k][j] - data[i][k]),2);
        }

        double dist = Math.sqrt(sum);

        if(dist < min) {
            min = dist;
            saveCol = j;
        }
    }

    return saveCol;
}