자바에서는 파일이나 콘솔의 입출력을 직접 다루지 않고 스트림(Stream)이라는 흐름을 통해 다룬다. 여기서 스트림은 배열, 컬렉션의 저장 요소를 하나씩 참조해서 람다식으로 처리할 수 있도록 해주는 반복자이다. 스트림은 데이터 소스를 다루는 풍부한 메서드를 제공하며, 이를 통해 다량의 데이터에 복잡한 연산을 수행하면서도 가독성과 재사용성이 높은 코드를 작성할 수 있다. 스트림은 다음과 같은 핵심적인 특징이 있다. 스트림 처리 과정은 생성, 중간 연산, 최종 연산 세 단계의 파이프라인으로 구성된다. : 스트림 생성 -> 중간 연산 -> 최종 연산 -> 결과 리턴 원본 데이터 소스를 변경하지 않는다. : 오직 데이터를 읽어올 수 있으며 데이터에 대한 변경과 처리는 생성된 스트림 안에서만 수행된다. 일회용이다..