스트림의 연산
스트림이 제공하는 기능 - 중간연산과 최종연산
중간연산 - 연산결과가 스트림인 연산 반복적으로 사용가능
최종연산 - 연산결과가 스트림이 아닌 연산 , 단 한번만 적용가능 (스트림 요소를 소모)
Stream.distinct().limit().sorted().forEach(system.out.println)
스트림의 연산 , 중간연산
Stream<T> distinct() // 중복제거
Stream<T> filter(predicate<T> predicate) //조건에 안맞는요소를 걸러낸다.
Stream<T> limit(long maxSize) //스트림의 일부를 잘라낸다.
Stream<T> skip(long n) //스트림의 일부를 건너뛴다.
Stream<T> peek(Consumer<T> action) //스트림각 요소에 작업 수행
Stream<T> sorted() //스트림 요소 기본정렬
Stream<T> sorted(comparator<T> comparator) //정렬기준 적용
스트림의 요소 변환(스트림 핵심)
스트림의 요소를 특정형태의 스트림으로 변환한다.
Stream<R> Map(Function<T,R> mapper)
DoubleStream MapToDouble(ToDoubleFunction<T> mapper)
IntStream MapToInt(ToIntFunction<T> mapper)
LongStream MapToLong(ToLongFunction<T> mapper)
Stream<R> flatMap(Function<T.Stream<R> mapper)
DoubleStream flatMap ToDouble(Function<T.DoubleStream> m)
IntStream flatMapToInt(Function<T.IntStream> m)
LongStream flatMapToLong(Function<T.LongStream> m)
'JAVA' 카테고리의 다른 글
스트림4 중간연산 예제 (0) | 2023.03.16 |
---|---|
스트림3 스트림의 최종연산 (0) | 2023.03.15 |
스트림1 스트림의 특징 (0) | 2023.03.15 |
람다6 메소드 참조 (0) | 2023.03.15 |
람다5 함수 두개를 연결 andThan (0) | 2023.03.15 |