스트림(Stream)은 Java 8에서 컬랙션과 배열을 반복적으로 처리할 때 코드의 가독성을 향상시키고 병렬 처리를 쉽게 하기 위해 새로 도입된 api이다. 우리는 데이터를 처리할 때, 알고리즘 로직을 작성하기 보다는 어떤 작업을 원하는지 '선언형(Declarative)'으로 작성함으로써 보다 직관적인 코드를 작성할 수 있다. 선언형과 명령형 선언형과 명령형을 비교하여 어떤 것이 다른지 직접 코드로 비교해보자 먼저 우리가 일반적으로 사용하는 명령형 코드이다 public class Example { public static void main(String[] args) { List numbers = Arrays.asList(1, 2, 3, 4, 5); List evenNumbers = new ArrayLis..