这是我正在尝试制作的代码,到目前为止,主要方法中只有两个错误,我试图从这里调用其他方法,这是什么给我错误,请帮助。我需要做些什么才能解决这个问题。
public static void main(String[] args) {
ArrayList<Integer> userNumbers = getInput();
double avg = average(arrayList <integerList>);//error calling a method
printAverage(avg, integerList);// error calling a method
}
public static ArrayList<Integer> getInput() {
ArrayList<Integer> integerList = new ArrayList<Integer>();
Scanner in = new Scanner(System.in);
System.out.println("Enter 5 to 10 positive integers all on one line,
seperated"
+ " by spaces; enter q to quit data entery:");
integerList.add(in.nextInt());
return integerList;
}// getting the numbers for the array list
public static double average(ArrayList<Integer> integerList){
double avg = integerList.stream().mapToInt(val ->
val).average().getAsDouble();
return avg;
}//calculating the average
public static void printAverage(ArrayList<Integer> integerList, double avg)
{
System.out.println("The average of the numbers " + integerList + " is "
+ avg);
}//printing the average
答案 0 :(得分:0)
Double avg = average(userNumbers);
printAverage(userNumbers, avg);
这是您在main()
答案 1 :(得分:-2)
在main方法中,您传递的是average(arrayList)参数,但您只想传入Arraylist的名称,即userNumbers。 与printAverage(avg,integerList)相同的应该是printAverage(avg,userNumbers)。
这是因为您在main中定义了一个名为userNumbers的局部变量。