본문 바로가기

CS/Java

BufferedReader

 

 

 

이번 포스팅에서는 Java에서의 입력방법 중 하나인 BufferedReader에 대해 얘기해볼 것이다.

 

 

 

3) BufferedReader : 문자열을 읽어 들인다.

 

저번 포스팅에서 InputStreamReader 클래스는 고정된 길이로만 읽어야 한다는 불편한점이 있다고 하였다.

 

BufferedReader는 사용자가 엔터키를 입력할 때까지 사용자의 입력을 전부 받아들일 수 있게 하는 클래스로,

InputStreamReader의 단점을 보완해준다.

 

예시) 입력 : HelloWorld, 출력 : HelloWorld

 

그렇다면, 이제 BufferedReader을 이용해 입력을 받는 코드를 짜 보자.

 

import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;

public class StreamTest {
	public static void main(String[] args) throws Exception {
    	InputStream in = System.in;
        InputStreamReader reader = new InputStreamReader(in);
        BufferedReader br = new BufferedReader(reader); // ①
        
        String a = br.readLine(); // ②
        System.out.println(a); // ③
    }
}

 

① : BufferedReader의 readLine 메소드를 이용하기 위해 BufferedReader 객체를 생성해준다.

- BufferedReader br = new BufferedReader(reader); -

 

이때, BufferedReader는 객체 생성시 생성자의 입력값으로 InputStreamReader의 객체가 필요하므로

인자에 reader를 넣어준다.

(생성자에 대해서는 다음에 얘기하는 것으로 하고, BufferedReader 객체 생성시 InputStreamReader의 객체가 필요하다는 점만 알고 있으면 된다.)

 

 

② : BufferedReader의 readLine 메소드를 이용하여 사용자가 엔터키를 입력할 때까지 입력했던 문자열 전부를 읽을 수 있게 해준다.

- String a = br.readLine(); -

 

 

③ : 변수 a의 값을 출력해준다.

- System.out.println(a); -

 

 

 

여기까지가 BufferedReader를 이용하여 입력받는 방법이었다.

 

마지막 입력 방법으로는 Scanner 클래스를 이용하는 것으로,

가장 입력을 쉽게 처리할 수 있다.

이 방법은 다음 포스팅에서 알아보자!

 

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

객체지향 프로그래밍  (1) 2020.05.08
Scanner  (0) 2020.05.07
InputStreamReader  (0) 2020.05.07
InputStream  (0) 2020.05.07
변수  (0) 2020.05.07