我有一个包含十个值的数组,我希望遍历该数组并将最小值存储在变量中,但是即使最小的数字为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;
}