我有一个包含十个值的数组,我希望遍历该数组并将最小值存储在变量中,但是即使最小的数字为0.0,我仍会输出3

这是我的尝试:

  static void  lowestStudentAvgMark() {
    double [] averagesArray = new double[10];
    for(int i = 0; i < 9; i++) {
      double total = (studentMarksArray[i][0]+studentMarksArray[i][1]+studentMarksArray[i][2])/3;
      averagesArray[i] = total;
    }
    double min = averagesArray[0];
    for (int counter = 1; counter < averagesArray.length; counter++) {
      if (averagesArray[counter] < min) {
        min = averagesArray[counter];
      }
    }
    System.out.println(min);
  }

最佳答案

您的第一个for循环读取的1小于实际数字。因此,averagesArray的最后一个索引值是0。因此,您获得的最小编号为0

for(int i = 0; i< averagesArray.length; i++){ //Use averagesArray.length

   double total = (studentMarksArray[i][0]+
             studentMarksArray[i][1]+studentMarksArray[i][2])/3;
      averagesArray[i] = total;
}

10-08 16:18