java Scanner BufferedReader 사용법

BufferedReader

프로그래밍을 하다보면 사용자로부터 값을 입력받아야 할 때가 있습니다. 이럴 때는 자바 키보드 입력 클래스 java Scanner 메소드를 사용하면 됩니다.

웹 같은 경우는 html에서 input type=”text”를 쓰지만 java 콘솔에서 입력을 받아야 할 경우는 html태그를 쓸 수가 없어 난감한 경우가 있습니다.

이때는 BufferedReader와 Scanner 를 통해 사용자(키보드)로부터 입력을 받을 수 있습니다.

java Scanner

1. 예제 소스

아래의 예제는 사용자로부터 값을 입력 받으면 그 값을 구구단으로 출력하는 예제입니다.

public class Exinput {
	public static void main(String[] args) throws Exception {
	
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		System.out.print("숫자를 입력해주세요 :");
		
	// 1. BufferedReader
	//	String input = br.readLine();
	//	int num = Integer.parseInt(input);
		
	// 2. 	Scanner
		Scanner sc = new Scanner(System.in);  
		int num = sc.nextInt();
		
		for(int i=1; i<=9; i++){
			
			System.out.println(num+" X "+i+ " = "+ num*i);
			
		}
}
}

2. 결과

Scanner

다음과 같이 숫자 5를 입력하였고 이에 대한 5단의 구구단이 출력된 모습입니다.

위의 예제는 integer 타입의 정수만을 입력받았지만 위에 정의한 br이나 sc를 입력하고 .을 찍으면 다음과 같이 다양한 메소드를 통해 string이나 byte, float 타입으로 변수를 지정 및 할당 할 수 있습니다.

BufferedReader

3. 기능의 차이점

BufferedReader, Scanner는 둘다 사용자나 키보드로부터 값을 입력받는 기능을 제공하지만 딱히 차이점이 존재하지 않습니다.

단지 jdk 버전이 낮아서 이전에는 BufferedReader 썼지만 방법이 복잡하고 쓰기가 어려워서 개선책으로 나온 Scanner를 지금은 이를 더 많이 활용하고 있습니다.


“java Scanner BufferedReader 사용법” 에 하나의 답글

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

이 사이트는 스팸을 줄이는 아키스밋을 사용합니다. 댓글이 어떻게 처리되는지 알아보십시오.