Stream 파이프라인의 선택 기준을 나란히 비교한다
비교 항목: 소스는 파이프라인의 원소를 제공한다 / 부작용 없는 변환을 선호한다 / 병렬화는 순서와 비용을 측정한 뒤 선택한다
| 확인 질문 | 판단 근거 | 코드에서 드러낼 것 |
|---|---|---|
| 소스는 파이프라인의 원소를 제공한다 | 컬렉션, 배열, 파일 줄, 생성 함수에서 스트림을 만들며 원본 자료구조를 자동으로 변경하지 않습니다. | 타입과 시작값 |
| 부작용 없는 변환을 선호한다 | 외부 리스트에 add하는 forEach보다 map(...).toList()처럼 결과를 반환하면 실행 순서와 병렬 여부에 덜 민감합니다. | 실패 또는 변경 경계 |
| 병렬화는 순서와 비용을 측정한 뒤 선택한다 | parallelStream은 자동 성능 향상 스위치가 아닙니다. | 선택한 규칙의 결과 |
선택 기준 parallelStream은 자동 성능 향상 스위치가 아닙니다.