[Java] stream의 정의와 종류

최대 1 분 소요

일반적인 프로그램이라면 데이터를 외부에서 읽고 다시 외부로 출력하는 작업이 빈번하게 일어난다.

데이터사용자로부터 키보드를 통하여 입력이 되거나 파일이나 네트워크 장비로부터도 입력이 될 수 있다.

반대로 모니터를 통해 출력 되거나 파일로 출력되어 저장 되거나 네트워크로 출력되어 전송될 수 있다.

자바에서는 데이터가 Stream을 통해 입출력 된다.

Stream(스트림)이란 단일 방향으로 연속적으로 흘러가는 것을 말한다.

입력 스트림과 출력 스트림

프로그램을 기준으로

  • 출발하게 되면 출력 스트림
  • 도착하게 되면 입력 스트림

을 사용한다.

즉, 데이터를 입력 받을 때는 입력 스트림, 데이터를 출력할 때는 출력 스트림을 사용

네트워크 상에서 다른 프로그램과 데이터를 교환하려는 경우는 양쪽 모두 입력 스트림출력 스트림이 따로 필요하다.

그 이유는 스트림은 단방향이기 때문이다.

자바에서는 java.io 패키지에서 기본 데이터 입출력 API를 제공한다.

스트림의 종류

바이트 기반 스트림 문자 기반 스트림
모든 종류의 데이터(이미지, 멀티미디어, 문자 등)를 보내고 받을 수 있다. 문자만 보내고 받을 수 있다.


자세히 알아보기

Reference

댓글남기기