2014-09-10 3 views
0

성, 나이 및 체중을 묻는 프로그램을 만들고 있습니다. 그런 다음 해당 정보를 표시 한 다음 다시 묻습니다. "완료"를 입력하면 요청이 중지되고 각 사람에 대한 모든 정보가 표시됩니다.For 루프 내에서 개체의 새 인스턴스 만들기

"Person"클래스는 lastName을 String, age 및 weight로 이중 값을 갖습니다.

for 루프에서 사람의 새 인스턴스를 작성한 다음 루프가 완료되면 각 인스턴스를 인쇄하는 방법에 대해 고민하고 있습니다.

public static void main(String[] args) { 
    Scanner userInput = new Scanner(System.in); 
    String decision; 
    Person Guy = null; 

    for (int i =0; i<20; i++){ 
    Guy = new Person(); 
     System.out.println("Please enter a last name");  
     Guy.lastName = userInput.next(); 
      if (Guy.lastName.equalsIgnoreCase("finished")){ 
     break; 
     } 
    System.out.println("Please enter an age"); 
     Guy.age = userInput.nextDouble(); 
    System.out.println("Please enter a weight"); 
     Guy.weight = userInput.nextDouble(); 
    Guy.WriteOutput();  
    } 

    for (int i=0; i<20; i++){ 
     Guy.WriteOutput(); 
     if (Guy == null){ 
      break; 
     } 
    } 
} 

}

답변

0

당신은 모든 반복에 바닥에 옛 사람을 떨어 뜨리고 있습니다. 대신 각 사람을 구조체 (예 : ArrayList)에 추가하고 입력 단계가 완료된 후 해당 목록을 반복하여 각 사람을 출력합니다.

관련 문제