개인공부/백준코딩연습
[반복문] - A+B - 4
도원결의
2024. 8. 12. 00:07
문제
https://www.acmicpc.net/problem/10951
import java.io.*;
import java.util.*;
public class Main{
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
int a,b,sum;
String srt ="";
while( (srt = br.readLine())!= null ) {
StringTokenizer st = new StringTokenizer(srt, " ");
a = Integer.parseInt(st.nextToken());
b = Integer.parseInt(st.nextToken());
sum = a + b;
bw.write(String.valueOf(sum)+"\n");
};
bw.flush();
bw.close();
br.close();
}
}
날 너무 힘들게 한 문제
이 문제의 핵심은 EOF처리 여부가 관건이라고 함
EOF (End of File) 처리란 파일이나 입력 스트림의 끝을 처리하는 방법을 의미
BufferedReader는 readLine() 메서드를 제공하며
이 메서드는 파일의 끝이나 스트림의 끝에 도달하면 null을 반환한다.
이를 통해 EOF를 감지할 수 있습니다.
처음에 while문 조건을 (srt = br.readLine()).equals("") 로 하니 계속 틀렸다길래 왜 인가 했더니
EOF처리가 올바르게 작동하지 않았기 때문이였다.