Stream은 jdk8 버전부터 추가된 것으로
컬렉션의 저장요소를 1개씩 읽어서 람다로 처리하는 역할을 합니다.
예제 Stream 코드에 대해 설명하면
9~18라인: DataDto 객체 6개를 생성하여 List에 추가합니다.
21~24라인: List의 Stream을 통해 DataDto의 val1과 val2을 더한 값을 sum 속성에 추가하고 출력합니다.
25라인: sum 값이 10보다 큰 요소만 걸러냅니다.
20, 26라인: 중간처리 한 요소들을 수집하여 resList에 저장합니다.
31~33라인: resList 요소를 Stream으로 출력합니다.
예제 코드를 실행하면 위와 같이 정상적으로 출력된 것을 확인할 수 있습니다.
Stream과 Lambda를 통해 불필요한 코드를 줄일 수 있고 병렬 처리가 가능하기 때문에 자주 사용하면 좋을 거 같습니다.
'dev > 자바' 카테고리의 다른 글
Java thread lock synchronized (0) | 2024.04.23 |
---|---|
JDK 11 FileReader Encoding (0) | 2024.04.22 |
Comparator&Comparable 인터페이스 (0) | 2023.06.20 |
csv parsing lambda stream (0) | 2023.06.08 |
Domain 객체 메모리 (0) | 2023.05.18 |