코딩테스트/백준
[백준/11718] 그대로 출력하기 - EOF (Java)
wo__ongii
2025. 1. 2. 11:35
728x90
[풀이]
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Day26 {
public static void main(String[] args) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
String line;
while ((line = br.readLine()) != null) { // EOF까지 읽기
sb.append(line).append("\n"); // 줄바꿈 추가
}
br.close();
System.out.print(sb.toString());
}
}
StringTokenizer는 기본적으로 구분자를 기준으로 입력을 분리하지만, Java에서는 표준 입력에서 여러 줄 입력을 처리하기 위해서는 BufferedReader를 반복적으로 호출하여 각 줄을 개별적으로 처리해야 한다.
StringTokenizer를 사용하는 대신, 한 줄씩 읽고 그대로 출력하려면 BufferedReader의 readLine() 메서드를 활용하는 것이 적절하다.
- readLine() 반복 호출: 여러 줄 입력을 처리하기 위해 while 문을 사용하여 EOF까지 한 줄씩 읽음
- EOF 처리: readLine()이 null을 반환하면 입력이 종료되었다고 알도록 while문 사용
728x90
반응형