Stream이란?
기존 자바 COllection이나 Array의 요소를 가공할때 루프 (for문, foreach문)을 사용했다면,Stream은 람다형(함수형 인터페이스)으로 간단하게 요소를 처리할 수 있도록 한다.
객체집합.스트림생성().중개연산().최종연산()
1. 객체 집합
Collection이나 Array, List 등
2. 스트림 생성
stream()
3. 중개연산
원소를 가공하는 연산
map() : 특정조건의 요소의 값을 반환
filter() : 조건에 맞는 요소만 필터링
sorted() : 요소 정렬
distinct() : 요소 중복 제거
4. 최종연산
collect() : 스트림의 값을 다시 모아주는 메서드 (toMap, toSet, toList)를 사용하여 Collection으로 바꿔줌
List<Member> findMembers = memberService.findMembers();
List<MemberDto> collect = findMembers.stream().map(m -> new MemberDto(m.getName()))
.collect(Collectors.toList());
댓글