돌아 가기 QuestionArray
QuestionDatabase()
에서 :
public String[] QuestionDatabase(){
String[] QuestionArray;
QuestionArray = new String[2];
QuestionArray[0] = ("What is a dog?");
QuestionArray[1] = ("How many types of dogs are there?");
return QuestionArray;
}
이
이 다른 클래스에서
public class questions{
public void QuestionDatabase(){
String[] QuestionArray;
QuestionArray = new String[2];
QuestionArray[0] = ("What is a dog?");
QuestionArray[1] = ("How many types of dogs are there?");
}
}
, 나는 거기에서 그렇게 같은 질문을 잡고 싶어
다음과 같이 인쇄하십시오.
public class quiz{
public static void main (String[] args){
//Here is where I want to grab QuestionArray[0] and print to the screen.
System.out.println(new questions().QuestionDatabase()[0]);
}
}
그냥 String []을 반환하고 void 및 return QuestionArray를 반환합니다. 또는 필드에 배열을 넣고 getter 메서드를 사용합니다. 그런데 클래스 이름은 대문자로 시작해야하며 변수 이름은 소문자로 시작해야합니다. 이것이 표준입니다. – RadASM
작성한 코드에서'QuestionArray'는'QuestionDatabase' 메소드에 속한 지역 변수입니다. 메서드를 호출하면 배열이 설정되지만 메서드가 완료되면 배열은 설정 한 모든 작업과 함께 사라집니다. 대답은이를 해결하는 방법을 설명합니다. – ajb
@ Jarrod 이것을 잘못된 질문의 중복으로 표시했습니다. 이 질문은 지역 변수가 아니어야하는 지역 변수에 관한 것입니다. 연결된 질문은 프로그래머가 배열에서'toString()'을 사용하고'[I @ 3343c8b3'와 같은 쓰레기 출력을 얻으려고하는 일반적인 문제에 관한 것입니다. 다시 투표하려면 투표하십시오. – ajb