728x90
백준알고리즘 15552
BufferedReader, BufferedWriter
데이터가 바로 전달되지 않고 버퍼를 거쳐 전달되므로 데이터 처리 효율이 높다. 대량의 데이터를 처리할 때 유용함.
BufferedReader
Scanner의 역할
LeadLine메서드만 활용해 데이터 타입이 String으로 고정되기 때문에 다른형으로 사용할 경우 형변환 작업이 필요하다.
예외처리가 필수다.
Bufferedwriter
System.out.println의 역할
BufferedWriter.flush는 맨 마지막에 한 번만 사용하면 된다.
StringTokenizer
1. public StringTokenizer(String str) : 전달된 매개변수 str을 default delimiter(공백문자:\t, \n, \r)로 분리
2. public StringTokenizer(String str,String delim) : 두번째 전달된 매개변수 delim으로 문자열 분리
3. public StringTokenizer(String str,String delim,boolean returnDelims) : str을 분리시킬 때 delim까지 토큰으로 포함시킬지 여부를 결정(true=포함, false=불포함)
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.IOException;
import java.lang.Integer;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
int num;// = 100;
while (true) {
num = Integer.parseInt(bf.readLine());
if (num < 1000001) {
break;
}
}
for (int i = 0; i < num; i++) {
String ab = bf.readLine();
StringTokenizer st = new StringTokenizer(ab);
int a = Integer.parseInt(st.nextToken());
int b = Integer.parseInt(st.nextToken());
bw.write((a + b) + "\n");
}
bw.flush();
bw.close();
}
}
728x90
'Algorithm' 카테고리의 다른 글
자바 입력 값에서 최솟값 최댓값 구하기 (0) | 2021.11.29 |
---|---|
자바 숫자 자리수별 값 구하기 (0) | 2021.11.26 |
EOF (End of File) (0) | 2021.11.26 |
수열 StringTokenizer 활용 (0) | 2021.11.26 |
자바 윤년, 평년 (0) | 2021.11.25 |
자바 세자리 연산 과정 (0) | 2021.11.25 |
java.util.NoSuchElementException (0) | 2021.11.25 |
자바 Scanner 클래스 (0) | 2021.11.23 |