- 성능을 위해 Scanner 보다는 BufferdReader를 사용하기로 한다!
그리고 출력을 위해서는 2가지 방법이 있는데,
1. StringBuilder를 생성하여 하나의 문자열로 연결한 다음 한번에 출력
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = br.readLine();
StringTokenizer st = new StringTokenizer(str," ");
int A = Integer.parseInt(st.nextToken());
int B = Integer.parseInt(st.nextToken());
StringBuilder sb = new StringBuilder();
sb.append(A+B);
sb.append('\n');
sb.append(A-B);
sb.append('\n');
sb.append(A*B);
sb.append('\n');
sb.append(A/B);
sb.append('\n');
sb.append(A%B);
System.out.print(sb);
}
}
2. BufferedWriter를 사용
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
import java.io.BufferedWriter;
import java.io.OutputStreamWriter;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String[] str = br.readLine().split(" ");
int A = Integer.parseInt(str[0]);
int B = Integer.parseInt(str[1]);
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
bw.write((A+B) + "\n");
bw.write((A-B) + "\n");
bw.write((A*B) + "\n");
bw.write((A/B) + "\n");
bw.write((A%B) + "\n");
bw.flush();
bw.close();
}
}
위의 것이 BufferedReader + StringTokenizer + StringBuilder
아래 것이 BufferedReader + StringTokenizer + BufferedWriter 방식이다.
경우에따라 차이가 있겠지만
입력은 BufferedReader를 쓴느 것이좋고,
출력은 데이터가 많은 경우 StringBuilder와 BufferedWriter를 사용하는 것이 좋다.
'Programming > 알고리즘' 카테고리의 다른 글
[백준] 2588번 - 곱셈 - JAVA[자바] (0) | 2022.11.23 |
---|---|
[백준] 3003 - 킹, 퀸, 룩, 비숍, 나이트, 폰 (0) | 2022.11.23 |
[백준] 1008번 - A/B JAVA [자바] (0) | 2022.11.22 |
[백준] 1000번 : A+B - JAVA [자바] (0) | 2022.11.22 |
[백준] 2557번 : Hello World - JAVA [자바] (0) | 2022.11.22 |