본문 바로가기
Develop/Java

Scanner로 입력받을 시, nextInt() 후 nextLine() 안되는 이유

by jaeyoungb 2022. 6. 27.

일단 nextInt()는 입력받는 것이 숫자인 경우, nextLine()은 입력받는 것이 문자열인 경우 사용된다.

 

nextLine() -> nextInt() 의 순서로 사용하면 문제 없다.

 

그러나, nextInt() -> nextLine() 의 순서로 사용하면 nextLine()의 입력을 받지 않는다.

 

그 이유는 nextInt()는 숫자를 입력하고 난 뒤, 치게 되는 엔터(개행문자)를 제거해주지 않기 때문에

 

그 엔터가 nextLine()의 입력값에 들어가기 때문이다.

 

해결방법은 nextInt()의 구문 마지막에 scanner.nextLine()을 넣어주면 된다.

 

예시 )

 

'Develop > Java' 카테고리의 다른 글

자료형 일치  (0) 2022.08.25
print vs printf vs println  (0) 2022.08.24
Interface  (0) 2022.07.09
return null;  (0) 2022.07.09
외부에서 객체를 받는 매개변수  (0) 2022.06.28