j2emanue
j2emanue

Reputation: 62519

rxjava - how to build stream of integers from stream of observables which contain list of integers

Given a object that looks like the following:

class Products {
    ArrayList<Integer> numbers;

    public Products(ArrayList<Integer> numbers){}
        this.numbers = numbers;
    }
}

and lets say I instantiate it like this:

ArrayList<Integer> numbers1 = new ArrayList();
numbers1.add(23432);
numbers1.add(5555); 
numbers1.add(323423);
Products products1 = new Products(numbers1);
ArrayList<Integer> numbers2 = new ArrayList();
numbers2.add(234222);
numbers2.add(55665); 
numbers2.add(3278663);
Products products2 = new Products(numbers2);
ArrayList<Integer> numbers3 = new ArrayList();
numbers3.add(266622);
numbers3.add(52225); 
numbers3.add(7763);
Products products3 = new Products(numbers3);

Using RxJava, how would I convert products1, product2 and product3 to a stream of Integer?

So given a stream like products1,products2,products3 I need RxJava to build me this stream:

23432,5555,323423,234222,55665,3278663,266622,52225,7763

Upvotes: 1

Views: 168

Answers (1)

tynn
tynn

Reputation: 39843

You can use concatMap() with Observable.from(Iterable)

Observable.just(products1, product2, product3)
          .concatMap(product -> Observable.from(product.numbers))
          ...

Upvotes: 2

Related Questions