Write the following methods:
13. A method named loadScores that will be passed the size of an array, prompt the user to enter the appropriate number of floating point grades, then return the loaded array.인수를 사용하여 메서드 호출
메서드를 작성했지만 호출하려고 할 때 문제가 발생합니다.
public class ArrayHandout {
public static void main(String[] args) {
int size = loadScores(size);
double[] scoresArray = loadScores(size);
} // end main
public static double[] loadScores(int size) {
Scanner input= new Scanner(System.in);
System.out.println("How many scores would you like to enter?");
size = input.nextInt();
double[] scoresArray = new double[size];
int i;
for(i = 0; i < scoresArray.length; i++) {
System.out.println("Please enter a score:");
scoresArray[i] = input.nextDouble();
}// end for
System.out.println(scoresArray[i]);
return scoresArray;
} // end loadScores
} // end class
이 내가 원래의 코드를 쓸 때 내가 가진 한 일부 오류를 수정하려는 시도에 몇 가지 변경, 불행하게도, 심지어 이러한 변경 사항이 무엇인지 기억하거나 고정 된 경우하지 않습니다 여기에 내가 가진 무엇 문제는 내가 지금 컴파일 할 수 없기 때문이다. 컴파일 할 때 얻을 수있는 문제는 전체 배열을 인쇄하는 것이 아니라 배열의 첫 번째 번호 만 인쇄한다는 것입니다.
1 error found: File: C:\Users\HiTechRedneck\Desktop\Fall 2013\PlayingwithJava\ArrayHandout.java [line: 6] Error: incompatible types required: int found: double[]
내가 이전에 내가 때문에 size
요구 main
에 선언 할 것을 알고 : 내가 말했듯이 그 문제는 지금부터 수정 된 경우 나는 다음과 같은 오류 메시지가 나타납니다 컴파일 할 때, 나도 몰라 점점 "변수 크기를 찾을 수 없습니다"오류가 발생했습니다.하지만 사실은 내가 선언하고있는 변수이기 때문에 loadScores(size)
을 int size
으로 선언하려고 시도하고 있다는 것을 알았습니다. 선언하는 변수도 메소드의 인수입니다.
도움을 주시면 감사하겠습니다.
'int size = loadScores (size);' 그것은 당신이 원하는 것이 아닙니다. 'size'는 5와 같이 숫자 여야하지 않습니까? – kevinsa5
하지만 크기는 사용자가 메서드에서 입력 한 내용에 따라 달라 지므로 그만큼 막혀 있습니다. –
함수 안에서'size'를 읽는다면 함수의 매개 변수로 가져올 필요가 없습니다 - 그것은 읽히기 전에'size' 값을 알고 있다는 것을 의미합니다! – kevinsa5