我试图获取数组的最小值,最大值和平均值。我能够成功获得最小值和最大值,但平均功能给我带来了麻烦。
无法弄清楚我的代码出错了。
package basics;
public class Arrays {
public static void main(String []args) {
int[] numbers;
numbers=new int[]{24,29,17, 46, 44, 35, 37, 13, 1};
int max=getMax(numbers);
System.out.println(max);
int min=getMin(numbers);
System.out.println(min);
int avg=getAverage(numbers);
System.out.println(average);
}
public static int getMax(int[] inputArray){
int maxValue = inputArray[0];
for(int i=1;i < inputArray.length;i++){
if(inputArray[i] > maxValue){
maxValue = inputArray[i];
}
}
return maxValue;
}
public static int getMin(int[] inputArray){
int minValue = inputArray[0];
for(int i=1;i<inputArray.length;i++){
if(inputArray[i] < minValue){
minValue = inputArray[i];
}
}
return minValue;
public static int getAverage(int[] inputArray) {
int getAverage = inputArray[0];
int sum=0;
for (i = 1; i < inputArray.length; i++) {
sum = sum + inputArray[i];
}
return sum / inputArray.length;
}
}
}
答案 0 :(得分:2)
您没有将inputArray
的第一个词添加到变量sum
。此外,返回类型必须为double才能获得十进制值。
您可以尝试将sum
类型更改为double,因为您没有使用getAverage
变量,请将其删除并使循环遍历inputArray
中的所有字词。