带条件的 RxJava 多循环 [英] RxJava multiple loop with condition

查看:67
本文介绍了带条件的 RxJava 多循环的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在学习 RxJava 几个星期,我有一些像下面这样的 Java 代码

I am learning RxJava for a few week, i have some java code like below

代码:

String[] strings1 = new String[]{"a", "b", "c", "d", "e"};
Integer[] integers = {1, 2, 3, 4, 5};
String[] strings2 = new String[]{"f", "g", "h", "i"};

for (String str : strings1) {
    for (Integer integer : integers) {
        System.out.println(str + ":" + integer);
        if(integer == 4){
            for (String str2 : strings2) {
                System.out.println(str2 + ":" + integer);
            }
        }
    }
}

如何将其翻译成 RxJava 代码?

How can i translate it to RxJava code?

我尝试将 flatMapIterableflatMap 一起使用,但仍然无法访问它.

I trying to use flatMapIterable with flatMap but still can not reached it.

推荐答案

你去

@Test
public void thirdDeepLevel() {
    Observable.from(Arrays.asList("a", "b", "c", "d", "e"))
            .flatMap(letter -> Observable.from(Arrays.asList(1, 2, 3, 4, 5))
                    .map(number -> {
                        System.out.println(letter + ":" + number);
                        return number;
                    })
                    .filter(number -> number == 4)
                    .flatMap(number -> Observable.from(Arrays.asList("f", "g", "h", "i"))
                            .map(leter2 -> {
                                System.out.println(letter + ":" + number);
                                return leter2;
                            })))
            .subscribe();
}

您可以在此处查看更多学习 Rx 的示例 https://github.com/politrons/reactive

You can see more examples to lear Rx here https://github.com/politrons/reactive

这篇关于带条件的 RxJava 多循环的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆