메소드 참조 (method reference)
하나의 메소드만 호출하는 람다식은 메소드 참조로 간단히 할 수 있다.
종류 | 람다 | 메소드 참조 |
static 메소드 참조 | (x) -> ClassName.method(x) | ClassName::method |
instance 메소드 참조 | (obj, x) -> obj.method(x) | ClassName::method |
Stream 스트림
Stream - 중간연산과 최종연산의 기능으로 다양한 데이터 소스(컬렉션,배열)를 표준화된 방법으로 다루기 위한 것
중간 연산 - 연산결과가 스트림인 연산. 반복적으로 사용가능 (0~n번)
최종 연산 (forEach) - 연산결과가 스트림이 아닌 연산. 단 한번만 적용 가능(스트림의 요소를 소모)
스트림의 특징
- 데이터 소스로부터 데이터를 읽기만할 뿐 원본 데이터에 영향을 주지 않는다.
- 작업을 내부 반복으로 처리하고, iterator 처럼 일회용이다.
- 지연된 연산을 수행한다. 최종 연산 전까지중간연산이 수행되지 않는다.
- 스트림의 작업을 병렬로 처리하는 병렬스트림을 지원한다.
- 기본형 스트림은 IntStream, LongStream, DoubleStream 등 오토박싱&언박싱의 비효율이 제거된다.
'Java' 카테고리의 다른 글
쌍용강북교육센터 국비 학원 Day 2일차 Java (static, 자료형 타입) (0) | 2023.01.03 |
---|---|
쌍용강북교육센터 국비 학원 Day 1일차 Java (Class, instance) (0) | 2023.01.02 |
Java 기초 입문 11일차 (와일드카드, thread, 람다식) (2) | 2022.12.27 |
Java 자주사용하는 String Class의 생성자와 메소드 (0) | 2022.12.16 |
Java 기초 입문 10일차 (Collections Framework, Iterator, Map) (0) | 2022.12.07 |