안드로이드/RxJava

[안드로이드] RxJava - 생성 연산자

안드뽀개기 2022. 4. 1. 15:33
반응형

 

just

: 인자로 받은 데이터를 순서대로 발행하는 Observable 생성 연산자이며, 최대 10개까지 발행할 수 있다.

 

 

create

: emitter를 이용하여 데이터를 발행하고 onNext(), onComplete(), onError() 함수를 이용하여 데이터를 발행하거나 데이터의 발행을 완료처리하거나 데이터 발행도중 에러가 발생했음을 발생한다.

 

onComplete() 호출하면 데이터 발행이 완료되었기 때문에 더이상 데이터가 발행되지 않는다.

 

 

interval

: 시간 간격을 두고 데이터를 전달하는 stream을 만듭니다. 기본적으로 SchedulerSupport.COMPUTATION 스케쥴러로 별도의 스레드에서 실행이됩니다. 그 때문에 아래 코드를 실행하면 메인스레드가 먼저 종료되어 print가 되지 않아 메인스레드의 종료를 3초 늦추는 sleep 코드를 넣어 놨습니다.

 

 

timer

: 설정한 딜레이 후 데이터를 발행하는 스트림을 만듭니다. interval과 유사하지만 단 한번만 실행이 됩니다. 

 

 

range(n, m)

: n 부터 m만큼 증가하는 스트림을 만듭니다.

 

 

repeat

: 반복 횟수를 지정하여, 횟수만큼 반복하는 스트림을 만듭니다.

 

 

fromArray

: array(배열)의 스트림을 만듭니다. *를 붙이면 요소를 발행하고, 붙이지 않으면 배열자체를 발행합니다.

 

 

fromCallable

: 외부 함수로부터 데이터를 발행하는 스트림을 만듭니다.

 

 

fromIterable

: iterable을 상속받은 list, set 등의 스트림을 만듭니다. 결과의 순서가 뒤죽박죽인 이유는 Set 콜렉션은 순서가 정해져 있지 않기 때문에 항상 순서가 변경됩니다.

 

반응형