[BufferedReader, BufferedWriter 설명]
BufferedReader : Scanner과 유사 >> 입력
BufferedWriter : System.out.println()과 유사함 >> 출력
장점
: Scanner 대신 BufferedReader을 사용하는 경우가 많은데 이는 실행 속도가 BufferedReader가 훨씬 빠르기 때문에 많은 양의 데이터를 처리해야 하는 경우 BufferedReader을 사용하는 것이 좋음
단점
: Enter만 경계로 인식함
: 받는 데이터를 String으로 고정하기 때문에 입력받은 데이터의 타입을 변경해야 할 경우 가공하는 작업이 필요함
[사용법]
1) 아래 import가 추가적으로 필요함
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.InputStreamReader;
import java.io.InputStreamWriter;
2) 예외 처리가 필요함
import java.io.IOException; //클래스 import 필요
public static void main(String[] args) throws IOException{}
//main 클래스 옆에 throws 작성이 필요
[BufferReader 사용법]
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
//BufferedReader 사용을 위해 생성자 생성
String str = br.readLine(); //BufferedReader은 기본 String이기 때문에 그냥 입력 가능
int i = Integer.parseInt(br.readLine()); //기본 String 형으로 입력받기 때문에 int를 String으로 변환하는 Integer.parseInt 과정이 필요
* 만약 공백 단위로 데이터를 가공하고 싶다면 추가 작업이 필요함
StringTokenizer st = new StringTokenizer(s); //StringTokenizer인자값에 입력 문자열 넣음
int a = Integer.parseInt(st.nextToken());
int b = Integer.parseInt(st.nextToken());
[BufferedWriter 사용법]
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
String str = "String";
bw.write(s);
bw.flush(); //남은 데이터를 모두 출력
bw.close();//Stream 닫기
'공부 자료 > 자바[JAVA]' 카테고리의 다른 글
[Java] super & super() (0) | 2022.10.26 |
---|---|
[Java] About 클래스와 객체 (0) | 2022.10.25 |
[Java] Math.sqrt() 제곱근(루트) 구하기 (0) | 2022.10.18 |
[Java] 예외처리 try~catch~finally (0) | 2022.10.17 |
[Java] Math.pow() 거듭 제곱 구하기 (0) | 2022.10.13 |