2013-02-25 1 views
1

나는 자바에 다소 익숙하지 만 키보드에서 입력을 받으려고했다. 나는 스캐너를 사용해야한다는 것을 이해하지만, 내가 할 때, 프로그램은 입력을 기다리지 않을 것이다. 대신에 즉시 NoSuchElementException을 발생시킵니다. 다음과 같이 내가 사용하려고 코드는 다음과 같습니다키보드 입력 자바

내가 읽은 모든 것을에서
import java.util.*; 

public class Main { 
    public static void main(String args[]) { 
     int move = -1; 
     String moveColumn = ""; 
     Scanner scan = new Scanner(System.in); 

     System.out.print("Please enter a move: "); 
     moveColumn = scan.next(); 
     move = Integer.parseInt(moveColumn); 

     System.out.println("You chose " + moveColumn + "."); 
    } 
} 

, 코드 블록이 작동해야하지만 그렇지 않습니다. 누군가 내가 잘못하고있는 것을 지적하거나 적어도 나를 도울 수있는 자원을 지적 할 수 있습니까?

+0

'scan.nextLine()'시도해 보셨습니까? – nattyddubbs

+2

또한 scan.nextInt()를 사용할 수 있으므로 문자열을 변환 할 필요가 없습니다. – HectorLector

+2

방금이 코드를 복사하여 Eclipse에 붙여 넣었고 장애없이 실행되었습니다. 어떤 IDE를 사용하고 있습니까? – christopher

답변

0

터미널에서 코드를 실행했는데 성공했습니다. 프로그램은 숫자 (예상 값) 또는 예상되는 "NumberFormatException"을 던지는 문자열을 기다립니다. Survivor가 (3 월 9 일) Eclipse가 유용한 디버깅 도구를 제공함에 따라 Eclipse 또는 Netbeans과 같은 IDE를 설치하는 것이 좋습니다.

-2

moveColumn = scan.nextLine();

-1

대체 할 수 있습니다. moveColumn = scan.next(); move = Integer.parseInt (moveColumn); with move = scan.nextInt()