gpt4 book ai didi

java - 从 rx 链返回方法中的值

转载 作者:行者123 更新时间:2023-12-02 09:37:17 24 4
gpt4 key购买 nike

我有一个函数,传递一个字符串会返回另一个字符串。但我的问题是,使用 RxJava 我不知道如何返回 String 值。

        private void check(String value) {
if (getGenderValue(value).equals("male")) {
//do somehting
}
}

private String getGenderValue(String value) {
findGenderValueUseCase
.setType("somehting")
.setLanguage("language")
.setCountry("countryid")
.setValue(value)
.asObservable()
.compose(bindUntilEventDestroyView())
.subscribe(new NewSubscriber());
}

最佳答案

您可以将方法更改为:

        private void check(String value) {
findGenderValueUseCase
.setType("somehting")
.setLanguage("language")
.setCountry("countryid")
.setValue(value)
.asObservable()
.compose(bindUntilEventDestroyView())
.subscribe(value ->
if (getGenderValue(value).equals("male")) {
//do somehting
}
);
}

但请记住,由于它是可观察的,因此将为每个发出的值执行“做某事”。

或者如果你想以阻塞的方式实现它:

        private void check(String value) {
if (getGenderValue(value).equals("male")) {
//do somehting
}
}

private String getGenderValue(String value) {
return findGenderValueUseCase
.setType("somehting")
.setLanguage("language")
.setCountry("countryid")
.setValue(value)
.asObservable()
.compose(bindUntilEventDestroyView())
.blockingFirst(); // here we only return the first value
}

检查这个answer以便了解哪一个最好。

关于java - 从 rx 链返回方法中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57393227/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com