Combine: Merge, Concat, and Zip

Learn about the merge and concat operators.


Oftentimes we may find the need to combine several Observable streams into a single stream. Perhaps we have independent streams coming from multiple different sources and we would like to combine the results of these streams. Traditionally, in Java, this task is especially difficult, since synchronizing and blocking to wait for data coming from different threads of execution is error-prone and hard to debug. With RxJava, there are a few handy operators that allow us to combine several streams into a single unified stream.


There are several overloaded flavors of the .merge() operator, all of which allow the merging of multiple Observable streams into a single stream.

Get hands-on with 1200+ tech skills courses.