공부 기록
스트림(Stream)
HTT
2023. 3. 21. 18:50
자바의 정석으로 java 공부하기
https://www.youtube.com/watch?v=7Kyf4mMjbTQ&t=197s
- 스트림의 기능 : 중간연산, 최종연산
* 중간연산 : 연산결과가 스트림, 반복적으로 적용가능(0~n번)
* 최종연산 : 연산결과가 스트림이 아닌 연산, 단 한번만 적용가능(스트림의 요소를 소모, 0~1번)
- 스트림의 특징 : 원본변경 안함(readonly), 일회용(like iterator 필요하면 다시 생성), 최종연산 전까지 중간연산이 수행되지 않음, 일종의 표시만 해둠(지연된 연산)
- 스트림의 작업을 병렬로 처리 : 병렬스트림 parallel()
- 기본형 스트림 : IntStream, LongStream, DoubleStream
* 오토박싱&언박싱의 비효율 제거(Stream<Integer> -> IntStream)
* 숫자와 관련된 유용한 메서드 Stream<T>보다 더 많이 제공