1. 자바 입출력 기본
package codingtest;
import java.io.*;
import java.util.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st;
StringBuilder sb = new StringBuilder();
// 입력 예시: 첫 줄에 N
int N = Integer.parseInt(br.readLine());
// 두 번쨰 줄: 공백으로 구분된 N개의 수
st = new StringTokenizer(br.readLine());
int[] arr = new int[N];
for (int i = 0; i < N; i++) {
arr[i] = Integer.parseInt(st.nextToken());
}
// 출력 예시
for (int x : arr) sb.append(x).append('\n');
System.out.print(sb.toString());
}
}
BufferedReader
→ 빠른 입력
StringTokenizer
→ 공백 단위 파싱
StringBuilder
→ 출력 모아놓고 한 번에
2. 자바 EOF(End of File) 처리 코드
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));
StringTokenizer st;
StringBuilder sb = new StringBuilder();
String line;
// EOF까지 반복
while ((line = br.readLine()) != null) {
if (line.isEmpty()) continue; // 빈 줄 예외 처리 (있을 수도 있음)
st = new StringTokenizer(line);
int a = Integer.parseInt(st.nextToken());
int b = Integer.parseInt(st.nextToken());
sb.append(a + b).append('\n');
}
System.out.print(sb.toString());
}
}
br.readLine()
- 정상 입력 → 문자열 리턴
- 입력 끝 (EOF) →
null
리턴
- 그래서
while ((line = br.readLine()) != null)
로 끝까지 읽는 것.
Share article