Java의
Stream API를 사용할 때 자주 발생하는 오류에 대한 자세한 가이드: 스트림의 일회성 특성과 터미널 연산(
collect(),
forEach(),
count())을 반복 호출하는 실수, 순회 중 컬렉션 변경, 무한 스트림(
iterate,
generate)에서 빠진
limit(),
null 처리와
flatMap(Optional::stream)을 통한
Optional 다루기,
forEachOrdered()로 순서 보장,
Set을 활용한 효율적인 집합 연산, 자원 올바르게 닫기(
Files.lines + try-with-resources),
parallelStream() 사용 시 주의, 그리고 “터미널 연산이 호출되기 전까지는 아무 것도 실행되지 않는다” 원칙. 모든 문제는 이해하기 쉬운 예제와 수정 방법을 함께 제공합니다.