JPA

[JPA] 19. Stream API란?

Song hyun 2024. 10. 1. 11:34
728x90
반응형

[JPA] 19. Stream API란?

 

1. 자바 I/O 스트림과 Stram API의 차이점

  • 자바 I/O 스트림은 데이터를 읽고 쓰는 목적으로 사용된다. 바이트나 문자 데이터를 읽거나 쓰기 위한 스트림이다.
  • Stream API는 자바 8에서 도입된 중요한 기능 중 하나로, 데이터 컬렉션을 처리할 때 사용되는 강력한 도구!
자바 I/O 스트림 Stream API
파일, 네트워크 등 외부 자원으로부터 입출력 데이터 컬렉션(=자료 구조)을 처리
바이트, 문자 단위로 데이터를 읽거나 쓴다. 함수형 프로그래밍 스타일로 데이터 처리
데이터 전송 및 저장을 위한 스트림 필터링, 변환, 정렬, 집계 등 데이터 가공
입력 스트림에서 읽고, 출력 스트림에 씀 중간 연산최종 연산으로 나누어 처리  
파일 등에서 데이터를 반복적으로 읽고 씀 데이터를 처리하기 위한 한 번의 흐름 (일회성)

 

 

2. Stream API란?

-Stream API는 컬렉션이나 배열 등의 데이터소스를 함수형 프로그래밍 스타일로 처리할 수 있게 해준다. 

-데이터를 필터링하고 변환하고, 집계하는 등의 잓업을 더 간결하고 효율적으로 수행할 수 있다.

 

 

 

3. Stream API의 특징

  1. 선언적 방식: 데이터를 어떻게 처리할지에 집중하지 않고, 무엇을 할지에만 집중한다.
  2. 내부 반복: 컬렉션의 모든 요소에 대해 직접 반복하지 않고, 스트림이 반복을 관리해 간결한 코드를 작성할 수 있다.
  3. 일회성: 스트림은 한 번 사용하면 재사용할 수 없다. 필요하면 다시 스트림을 생성해야 한다.
  4. 지연 실행: 스트림은 중간 연산이 완료되기 전까지 실행되지 않고, 최종 연산이 호출될 때만 연산이 수행된다.

 

 

4. Stram의 두 가지 연산 동작 방식

728x90
반응형