09
16

BufferedReader/ BufferedWriter  : 버퍼를 이용해서 읽고 쓰는 함수. 

버퍼를 이용하지 않고 입력하는 경우 키보드의 키를 누르는 즉시 바로 전달된다.

그러나 버퍼를 이요하는 경우 키보드를 입력하면 메모리 버퍼에 전송했다가 버퍼가 가득 차거나 개행하면 버퍼의 내용을 한 번에 전송한다.

그냥 전송하는 것 보다는 모아서 전송하는 것이 훨씬 효율적이다

 

scanner vs BufferedReader

scanner : space와 enter로 입력 값을 인식 하기 떄문에 가공할 필요가 없어서 사용하기 편리하다

                입출력의 속도는 느리다

 

buffered : enter만 경계로 인식하고 받은 데이터는 String으로 고정되므로 필요에 따라 데이터를 따로 가공해야한다.

                입출력의 속도는 빠르다. 

 

 

BufferedReader사용방법

  readLine() : 한 줄을 읽어 String으로 변환한다

  read():한 글자만 읽어서 정수형으로 변환한다

 close():입력스트림을 닫는다

 

※bufferedReader는 공백 단위로 끊어주지 않아서 StringTokenizer의 nextToken을 사용하거나 split을 사용한다

 

sysout vs BufferedWriter

sysout : 함수에 따라 문자열 출력과 개행을 같이 해준다

bufferedWriter: 출력 속도는 빠르나 따로 개행을 해주지 않기 때문에 "\n"을 사용하거나 newLine함수를 사용한다

 

BufferedWriter사용방법

flush(): 스트림을 비운다. close하기 전에 비워줘야한다.

close():스트림을 닫는다. 닫기 전에 flush해야한다

newLine():개행

write(int i) : 한 글자 쓰기

write(int length): length만큼 write

 

 

 

COMMENT