Java 8이 등장하면서 자바 생태계에는 큰 변화가 있었습니다.(물론 지금은 20번대가 등장하지만...)람다(Lambda)와 함께 등장한 스트림(Stream API)은 우리가 코드를 작성하는 스타일을 완전히 뒤바꿔 놓았죠.하지만 막상 스트림을 쓰다 보면 "이게 그냥 for문보다 편해서 쓰는 건가?", "내부적으로 어떻게 돌아가는 거지?"라는 의문이 들 때가 있습니다.이번 시리즈에서는 총 2편에 걸쳐 자바 스트림을 깊이 있게 파헤쳐 보려 합니다.1편: Stream이 무엇이며, 어떤 원리로 동작하는가? (현재 글)2편: Stream vs For 문, 성능과 Clean Code 관점에서의 비교그럼, 스트림의 세계로 들어가 보겠습니다.1. 스트림(Stream)이란 무엇인가?스트림은 자바 8부터 추가된 기능으로,..