<RxJava>zip

진섭·2023년 6월 5일
0

RxJava

목록 보기
20/20
post-thumbnail

📌 zip 연산자란?

두 개 이상의 Observable을 조합하여 새로운 옵저버블을 생성하는 연산자입니다. zip 연산자는 각 옵저버블에서 발행된 항목을 조합하여 튜플 또는 결과 항목으로 발행한다.

📌 zip 사용법

  • zip 함수에는 Observable.zip()을 사용하기 위해 num, char의 Observable를 만들었습니다.
  • Observable.zip()은 num과 char 옵저버블에서 발행된 항목을 조합하여 새로운 결과 항목을 생성하는데 사용됩니다. BiFunction을 통해 각 항목을 조합하는 로직을 제공합니다. t1t1t2 형태의 문자열을 생성하여 반환합니다.
  zip()
            .subscribe(
                {
                    Log.d("zip", "onNext : ${it}")
                },
                {
                    Log.d("zip", "onError ${it}")
                },
                {
                    Log.d("zip", "zip")
                }
            ).let { _ -> }


fun zip(): Observable<Any> {
    val num = Observable.just(1, 2, 3, 4, 5)
    val char = Observable.just("A", "B", "C", "D")
    return Observable.zip(num, char, BiFunction { t1, t2 ->
        "$t1$t2"
    })
}
profile
Android 개발자

0개의 댓글