이번 포스팅에서는 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 (1) | 2020.05.07 |
InputStream (0) | 2020.05.07 |
변수 (0) | 2020.05.07 |