BufferedReader은 이름처럼 버퍼를 이용해서 읽는 함수다.
Sanner함수보다 입출력 효율이 훨씬 좋다.
BufferedReader 사용방법
다음은 입력받은 데이터를 공백단위로 나눠 출력하는 예제이다.
readLine()은 데이터를 라인 단위로 읽는다.
readLine 메소드는 IOException을 발생시킬 수 있수 있으므로 꼭 IOException 처리를 해줘야한다.
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class Main{
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine()," ");// 공백으로 있는 데이터를 순서대로 받음
while(st.hasMoreTokens()) { // 다음 토큰 존재 확인
int result = Integer.parseInt(st.nextToken()); // BufferedReader에 readLine함수는 리턴값이 String으로 형변환 반드시 해줘야함
System.out.println(result);
}
}
}
* readLine을 사용해 데이터를 라인 단위로 읽을때 데이터를 공백 단위로 나누고 싶은 경우
StringTokenizer 클래스의 nextToken함수나 String클래스의 split함수를 이용한다.
StringTokenizer클래스
문자열을 지정한 구분자로 쪼개주는 클래스.
쪼개진 문자열을 토큰이라고 한다.
- hashMoreTokens() : 다음 토큰 존재 확인
- nextToken() : 다음 토큰 받아오기
결과값 확인
BufferedReader에 대한 자세한 설명은 아래 참고한 사이트에 잘 나와있다.
참고 사이트 : jhnyang.tistory.com/92
[Java 자바 입출력] BufferedReader/BufferedWriter
[자바 입출력 함수] BufferedReader / BufferWriter BufferedReader/BufferedWriter은 이름처럼 버퍼를 이용해서 읽고 쓰는 함수입니다. 이 함수는 버퍼를 이용하기 때문에 이 함수를 이용하면 입출력의 효율이..
jhnyang.tistory.com
'프로그래밍&IT > java' 카테고리의 다른 글
[Java 자바] toString()과 String.valueOf() 비교 (0) | 2021.07.12 |
---|---|
[Java 자바] JSON 파싱 (0) | 2021.05.04 |
[Java 자바] HashMap (0) | 2021.04.19 |
[Java 자바] HashMap의 getOrDefault() (0) | 2021.04.19 |
[Java 자바] chatAt() (0) | 2021.04.17 |