본 내용은 필자가 학습한 내용을 정리하는 내용입니다. 대부분 의 내용이 아래 책의 내용이므로 원서를 구매해서 직접보시는걸 추천드립니다! RxJava 프로그래밍 리액티브 프로그래밍 기초부터 RxAndroid까지 한 번에 |
Maybe 클래스
Maybe 클래스는 RxJava 2에 처음 도입된 Observable의 또 다른 특수 형태입니다.
한글로 '아마도'라는 뜻으로, Single 클래스와 마찬가지로 최대 데이터 하나를 가질 수 있지만
데이터 발행 없이 바로 데이터 발생을 완료(Single 클래스는 1개 완료, Maybe 클래스는 0 혹은 1개 완료)할 수도 있습니다. 즉 Maybe 클래스는 Single 클래스에 onComplete 이벤트가 추가 된 형태 입니다.
Maybe 클래스의 마블 다이어 그램
출처- http://reactivex.io/RxJava/javadoc/io/reactivex/Maybe.html
✓는 onSuccess 이벤트, X는 onError 이벤트, | 는 onComplete 이벤트에 해당합니다
Maybe 객체는 Maybe 클래스를 이용해 생성할 수 있지만 보통 Observable의 특정 연산자를 통해 생성할 때가 많습니다.
또한 Maybe 객체를 생성할 수 있는 리액티브 연산자에는 elementAt(), firstElement(), flatMapMaybe(), lastElement(), reduce(), singleElement() 함수 등이 있습니다.
'Rx' 카테고리의 다른 글
Observable -13 (Subject클래스-AsyncSubject클래스) (6) | 2018.12.23 |
---|---|
Observable -12 ( 뜨거운 Observable) (4) | 2018.12.23 |
Observable -10 (Single 클래스) (4) | 2018.12.23 |
Observable -9 (fromPubilsher함수) (4) | 2018.12.23 |
Observable -8 (fromFuture함수) (4) | 2018.12.23 |
댓글