Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- ReactiveProgramming
- Kotlin
- Android
- livedata
- IntelliJ
- ViewModel
- FRAGMENT
- leetcode
- homebrew
- Java8
- Algorithm
- git
- github
- Database
- Jetpack
- Java
- rxjava
- sourcetree
- Room
- library
- programmers
- androidstudio
- Version
Archives
- Today
- Total
Learn & Run
Java - 메서드 래퍼런스 이해하기 본문
목표
RxJava에서는 람다 표현식을 자주 사용하기 때문에 메서드 래퍼런스를 배워보면 좋을 것이라고 생각합니다. 이번 시간에는 메서드 래퍼런스를 이용하여 람다 표현식을 조금 더 간결하게 표현해 보도록 합니다.
1. 메서드 래퍼런스란?

- 우리말로 번역하면 메서드 참조라는 의미입니다.
- 람다 표현식의 몸체 부분에 기술되는 메서드를 이용해서 표현되며, 메서드의 이름만 전달합니다.
- 구분자(::)를 붙이는 방식으로 메서드 레퍼런스를 표현합니다.
- 메서드 래퍼런스를 사용하면 람다 표현식은 더욱 간결해지게 됩니다.
2. 메서드 래퍼런스의 유형
- ClassName :: Static Method
- 예) (String s) -> Integer.parseInt(s) --> Integer::parseInt

- ClassName :: Instance Method
- 예) (String s) -> s.toLowerCase() --> String::toLowerCase

- Object :: Instance Method
- 람다 표현식 외부에 참조하는 인스턴스 메서드가 있는 경우를 말합니다.
- 예) (int count) -> obj.getTotal(count) --> obj::getTotal

- ClassName :: New
- 예) () -> new Car()

'Java' 카테고리의 다른 글
| RxJava - 리액티브에서의 생성 연산자 (0) | 2021.01.20 |
|---|---|
| Java - 함수형 인터페이스와 람다 표현식 (0) | 2021.01.13 |
| RxJava - 또 다른 생산자 Single, Maybe와 Completable (0) | 2021.01.12 |
| RxJava - 배압 전략(BackpressureStrategy)의 종류 (0) | 2021.01.08 |
| RxJava - Flowable과 Observable 이해하기 (0) | 2021.01.08 |