
✅ 문제
N을 입력받은 뒤, 구구단 N단을 출력하는 프로그램 작성하기
📥 입력
첫째 줄에 N이 주어진다. N은 1보다 크거나 같고, 9보다 작거나 같다.
📥 출력
출력 형식과 같게 N*1부터 N*9까지 출력한다.
💡 풀이
BufferedReader는 내부적으로 버퍼를 사용하여 여러 바이트를 한번에 읽어오기 때문에 입출력 성능이 Scanner에 비해 입출력 성능이 좋습니다. 작은 입력의 경우에는 체감이 안되지만 대량의 데이터를 처리하는 상황이나 반복문으로 여러 줄을 입력 받는 경우 등은 BufferedReader 의 성능이 월등히 좋습니다. 따라서 적은 입력은 Scanner 를 대량의 데이터입력 또는 파일을 읽어올때는 BufferedReader를 사용하는 것이 효과적입니다.
▼ [자바] BufferedReader와 Scanner 차이▼
(4) 자바 BufferedReader 와 Scanner
Scanner 란? : Scanner 란 사용자에게 입력 장치로 입력을 받아 그 값을 변수에 저장하는 역할을 한다. ...
blog.naver.com
✅ 1. Scanner로 입력받는 풀이
package Baekjoon_test;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int N = sc.nextInt();
for (int i = 1; i < 10; i++) {
System.out.println(N + " * " + i + " = " + N * i);
}
}
}
이 코드를 BufferedReader를 사용하여 입력을 받도록 변환해보겠습니다. BufferedReader를 사용하면 Scanner보다 더 효율적으로 입력을 처리할 수 있습니다.
✅ 2. BufferedReader로 입력받는 풀이
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int N = Integer.parseInt(br.readLine());
for (int i = 1; i < 10; i++) {
System.out.println(N + " * " + i + " = " + N * i);
}
}
}
위의 코드는 Scanner를 BufferedReader로 변경한 것입니다. BufferedReader를 사용할 때는 IOException을 처리해주어야 합니다. 따라서 main 메서드에 throws IOException을 추가했습니다.
'코딩테스트 > BaekJoon' 카테고리의 다른 글
[백준] 8393번 합 - 자바 / java (0) | 2024.04.12 |
---|---|
[백준] 10950번 A+B-3 자바 / java (0) | 2024.04.11 |
[백준] 2480번 주사위 세 개 - 자바/java (0) | 2024.04.08 |
[백준] 2525번 오븐 시계 - 자바 / java (1) | 2024.04.04 |
[백준] 2884번 알람 시계 - 자바 / java (0) | 2024.04.04 |

✅ 문제
N을 입력받은 뒤, 구구단 N단을 출력하는 프로그램 작성하기
📥 입력
첫째 줄에 N이 주어진다. N은 1보다 크거나 같고, 9보다 작거나 같다.
📥 출력
출력 형식과 같게 N*1부터 N*9까지 출력한다.
💡 풀이
BufferedReader는 내부적으로 버퍼를 사용하여 여러 바이트를 한번에 읽어오기 때문에 입출력 성능이 Scanner에 비해 입출력 성능이 좋습니다. 작은 입력의 경우에는 체감이 안되지만 대량의 데이터를 처리하는 상황이나 반복문으로 여러 줄을 입력 받는 경우 등은 BufferedReader 의 성능이 월등히 좋습니다. 따라서 적은 입력은 Scanner 를 대량의 데이터입력 또는 파일을 읽어올때는 BufferedReader를 사용하는 것이 효과적입니다.
▼ [자바] BufferedReader와 Scanner 차이▼
(4) 자바 BufferedReader 와 Scanner
Scanner 란? : Scanner 란 사용자에게 입력 장치로 입력을 받아 그 값을 변수에 저장하는 역할을 한다. ...
blog.naver.com
✅ 1. Scanner로 입력받는 풀이
package Baekjoon_test;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int N = sc.nextInt();
for (int i = 1; i < 10; i++) {
System.out.println(N + " * " + i + " = " + N * i);
}
}
}
이 코드를 BufferedReader를 사용하여 입력을 받도록 변환해보겠습니다. BufferedReader를 사용하면 Scanner보다 더 효율적으로 입력을 처리할 수 있습니다.
✅ 2. BufferedReader로 입력받는 풀이
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int N = Integer.parseInt(br.readLine());
for (int i = 1; i < 10; i++) {
System.out.println(N + " * " + i + " = " + N * i);
}
}
}
위의 코드는 Scanner를 BufferedReader로 변경한 것입니다. BufferedReader를 사용할 때는 IOException을 처리해주어야 합니다. 따라서 main 메서드에 throws IOException을 추가했습니다.
'코딩테스트 > BaekJoon' 카테고리의 다른 글
[백준] 8393번 합 - 자바 / java (0) | 2024.04.12 |
---|---|
[백준] 10950번 A+B-3 자바 / java (0) | 2024.04.11 |
[백준] 2480번 주사위 세 개 - 자바/java (0) | 2024.04.08 |
[백준] 2525번 오븐 시계 - 자바 / java (1) | 2024.04.04 |
[백준] 2884번 알람 시계 - 자바 / java (0) | 2024.04.04 |