[Java]int형 입력 후 String형 입력 안되는 현상

Big One·2021년 12월 7일
0

javaTip

목록 보기
1/2
post-thumbnail

java 언어로 코딩테스트를 처음 접할 때 종종 접할 수 있는 문제 중 int형 입력 후 String형 입력 받을 때 입력을 못받는 문제가 되는 현상입니다.

Scanner.nextInt() 로 입력받은 후 Scanner.nextLine() 사용하게되면 입력을 받지 못하고 바로 끝나버리는 현상이 발견됩니다.
Scanner.nextInt()의 경우 개행문자(줄 바꿈, \n) 전 까지 입력을 받아 이후 수행될 Scanner.nextLine() 이 문제가 발생합니다.

해결방법1. int형 입력이 끝난 후 Scanner.nextLine()을 추가로 적어줍니다.

public class Main {
    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);

        int n = sc.nextInt();

        sc.nextLine(); // 추가!
        String name = sc.nextLine();
        
        System.out.println("n : " + n + ", name = " + name);

sc.nextLine() 을 추가해주어 문제를 해결 할 수 있습니다.

profile
이번생은 개발자

0개의 댓글