将变量从一种方法发送到另一种方法

时间:2016-10-09 00:09:33

标签: java arrays joptionpane

所以我有一个程序可以计算平均成绩,最高成绩,最低成绩,以及没有最低成绩的平均成绩。因此,对于我的方法,确定没有最低等级的新平均值,我想使用我在该方法中找到的最低等级。

/**
 * lowestGrade() - method will return lowest grade
 * @return lowGrade
 */
public static double lowestGrade(double[] grades) {

    double lowGrade = 100.0;

    // for loop that goes through grades array and stores
    // first grade found as highest grade
    for (int i = 0; i < grades.length; i++) {

        // if statement will determine true lowest grade
        if ( grades[i] < lowGrade ) {
            lowGrade = grades[i];
        }
    }

    // Output
    return lowGrade;
}

/**
 * averageWOLowGrade() - method will calculate average without lowest grade
 * @return newAverage
 */
public static void averageWOLowGrade(double[] grades) {
    double newAverage = 0;  
}

1 个答案:

答案 0 :(得分:0)

如上所述[{3}},您可以在字段中存储最低成绩:

{ "TourId":"3", "UserId":"1" }

请记住执行顺序在这里很重要。我宁愿计算两次值,而不是在静态变量中管理状态。甚至更好:在一次运行中计算所有结果:

private static double min = 0.0;

public static double lowestGrade(double[] grades) {
    // Set min and return its value.
    return min = DoubleStream.of(grades).min().getAsDouble();
}

public static double averageWOLowGrade(double[] grades) {
    return DoubleStream.of(grades).filter(x -> x != min)
                                  .average()
                                  .getAsDouble();
}