걸러내기 Filter(Predicate) 예) 이름이 3글자 이상인 데이터만 새로운 스트림으로 변경하기 Map(Function) 또는 FlatMap(Function) 예) 각각의 Post 인스턴스에서 String title만 새로운 스트림으로 생성하기 generate(Supplier) 또는 Iterate(T seed , UnaryOperator) 예) 10부터 1씩 증가하는 무제한 숫자 스트림 예) 랜덤 int 무제한 스트림 제한하기 limit(long) 또는 skip(long) 예) 최대 5개의 요소가 담긴 스트림을 리턴한다. 예) 앞에서 3개를 뺀 나머지 스트림을 리턴한다. public class ClassForStreamAPIPractice { private Integer id; private St..
Stream 소개 데이터를 담고 있는 저장소(컬렉션)가 아니다. Functional in nature , 스트림이 처리하는 데이터 소스를 변경하지 않는다. 스트림으로 처리하는 데이터는 오직 한 번만 처리한다. (실시간으로 들어오는 데이터)무제한일 수도 있다. (무제한 이지만 특정 조건으로)Short Circuit 메서드를 사용해서 제한할 수 있다. 중개 오퍼레이션은 근본적으로 lazy하다. 손쉽게 병렬 처리할 수 있다. 병렬 처리를 쓴다고 꼭 빨라지는 것은 아니다. 스트림 파이프라인 0 또는 다수의 중개 오퍼레이션 (intermediate operation)과 한 개의 종료 오퍼레이션 (terminal operation)으로 구성한다. 스트림의 데이터 소스는 오직 종료 오퍼레이션을 실행할 때에만 처리한다..
기록/JAVA 2021. 1. 10. 20:31
걸러내기 Filter(Predicate) 예) 이름이 3글자 이상인 데이터만 새로운 스트림으로 변경하기 Map(Function) 또는 FlatMap(Function) 예) 각각의 Post 인스턴스에서 String title만 새로운 스트림으로 생성하기 generate(Supplier) 또는 Iterate(T seed , UnaryOperator) 예) 10부터 1씩 증가하는 무제한 숫자 스트림 예) 랜덤 int 무제한 스트림 제한하기 limit(long) 또는 skip(long) 예) 최대 5개의 요소가 담긴 스트림을 리턴한다. 예) 앞에서 3개를 뺀 나머지 스트림을 리턴한다. public class ClassForStreamAPIPractice { private Integer id; private St..
기록/JAVA 2021. 1. 10. 18:09
Stream 소개 데이터를 담고 있는 저장소(컬렉션)가 아니다. Functional in nature , 스트림이 처리하는 데이터 소스를 변경하지 않는다. 스트림으로 처리하는 데이터는 오직 한 번만 처리한다. (실시간으로 들어오는 데이터)무제한일 수도 있다. (무제한 이지만 특정 조건으로)Short Circuit 메서드를 사용해서 제한할 수 있다. 중개 오퍼레이션은 근본적으로 lazy하다. 손쉽게 병렬 처리할 수 있다. 병렬 처리를 쓴다고 꼭 빨라지는 것은 아니다. 스트림 파이프라인 0 또는 다수의 중개 오퍼레이션 (intermediate operation)과 한 개의 종료 오퍼레이션 (terminal operation)으로 구성한다. 스트림의 데이터 소스는 오직 종료 오퍼레이션을 실행할 때에만 처리한다..