사용자가 잘못된 데이터를 입력하지 않고 올바르게 응답 할 때까지 while 루프에서 Try catch 사용 (Java)

벤 카다 나라시 만

무작위로 생성되는 숫자를 추측하고 입력이 정확할 때 루프가 종료되도록 사용자에게 요청하는 프로그램을 만들려고합니다. 또한 사용자가 잘못된 데이터를 입력하는 것을 막고 사용자가 유효한 데이터를 입력 할 때까지 루프가 반복되기를 원합니다. 문제는 입력으로 알파벳을 입력하면 프로그램이 반복된다는 것입니다. 미리 도와 주셔서 감사합니다. 이클립스 케플러를 사용하고 있습니다

출력 :
숫자를 추측 해보십시오. k 유효하지 않은 데이터를 입력했습니다. 다시 시도하십시오. 숫자를 추측하십시오. 잘못된 데이터를 입력했습니다. 다시 시도하십시오. 숫자를 추측하십시오. 잘못된 데이터를 입력했습니다. 다시 시도하십시오. 숫자를 추측하십시오. 잘못된 데이터를 입력했습니다. 다시 시도하십시오. 숫자를 추측하십시오. 잘못된 데이터를 입력했습니다. 다시 시도하십시오 번호를 추측하십시오 : 잘못된 데이터를 입력했습니다. 다시 시도하십시오. 숫자를 추측하십시오. 잘못된 데이터를 입력했습니다. 다시 시도하십시오. 숫자를 추측하십시오. 잘못된 데이터를 입력했습니다. 다시 시도하십시오 번호를 추측하십시오 : 잘못된 데이터를 입력했습니다. 다시 시도하십시오 번호를 추측하십시오 : 잘못된 데이터를 입력했습니다. 다시 시도하십시오 숫자를 추측하십시오 :

while(true){
         try{
            System.out.println("Try guessing the number: ");
            guess=input.nextInt();
            if(guess==sum){
                System.out.println("You have guessed it correctly");
                break;
            }
        }catch(InputMismatchException e){
            System.out.println("You have entered invalid data. Please try again");
        }
       }
Ravensgo

이것은 나를 위해 일했습니다 ... while (true) 문제를 해결하고 디버깅하기 쉬운 잘못된 데이터를 확인하는 더 간단한 방법을 사용합니다! 게임을 즐기고 행운을 빕니다!

        String guessString="";
        int guess = 0;
        Scanner input = new Scanner(System.in);
        int sum = 12;
        //just used 12 as a placeholder, you'll have to connect your 
        //random number generator, as well as changing the default of 
        //guess=0 if 0 is in your range for the random number

        while(sum!=guess){

            System.out.println("Try guessing the number: ");
            guessString=input.next();
            try {
                guess = Integer.parseInt(guessString);
            } catch(Exception e) {
                System.out.println("Invalid Data.");
                guess=0;
            }

        }
        System.out.println("You have guessed it correctly");

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

Related 관련 기사

뜨겁다태그

보관