JAVA

JAVA 입력 버퍼 비우기 (Scanner 버퍼 비우기)

Andro07 2021. 3. 1. 16:31
728x90
반응형
import.java.util.Scanner;

public class Example{
	public static void main(String[] args){
    	Scanner exam = new Scanner(System.in);
        int a = exam.nextInt();
        String b = exam.nextLine();
        
        System.out.println(a);
        System.out.println(b);
	}
}

위 코드를 실행시켜 보면

[ input ]

12

example is example!

 

[ output ]

12

 

 

이렇게 뒤의 문장은 출력되지 않습니다.

이유는 정수 12를 입력하고 나서

엔터를 친 것이 String클래스 변수 b에 들어갔기 때문입니다.

 

이것은 스캐너의 버퍼를 비워주면 되는데

그 방법으로

위 코드에 exam.nextLine(); 을 추가해주면 됩니다.

 

import.java.util.Scanner;

public class Example{
	public static void main(String[] args){
    	Scanner exam = new Scanner(System.in);
        int a = exam.nextInt();
        exam.nextLine();
        String b = exam.nextLine();
        
        System.out.println(a);
        System.out.println(b);
	}
}
728x90
728x90