Exception in thread main java.util.InputMismatchException
키보드로부터 어떠한 입력을 받을 때,
에러 메시지가 발생할 때가 있어요.
보통 이 경우는, 입력 받고자하는 자료형이 다를 경우 발생합니다.
아래 코드는 숫자를 입력받는 코드예제입니다.
import java.util.Scanner;
public class Test05 {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in); // scan 객체 생성
System.out.print("1~10 사이에 숫자 입력 :");
int number = scan.nextInt(); // 키보드로 문자열 입력받기
System.out.println("입력한 숫자는? " + number );
}
}
개발자가 정수(즉, 숫자)를 입력받고자 하였는데,
응용프로그램을 사용하는 사용자가
숫자가 아닌 다른 문자를 입력하였을 경우 오류가 발생합니다.
이 부분을 try~catch 문을 이용하여 문제를 해결할 수 있어요~~
try {
n = scanner.nextInt(); // 정수 입력
}
catch(InputMismatchException e) {
System.out.println("정수가 아닙니다. 다시 입력!");
}
(과외가 필요하다면, 아래 채널로 연락주세요)
제 사업장은
가산디지털단지역 인근에 있습니다 :)
소규모 강의장이 준비되어 있으니~
편하게 연락주세요.
댓글