RxJava在最后一个状态下是可观察的

RxJava在最后一个状态下是可观察的,java,rx-java,observable,frp,rx-swift,Java,Rx Java,Observable,Frp,Rx Swift,我从RxJava开始,我想创建一个可以保存最后一个状态的可观察对象 在RxSwift中,这将是Variable(),但我在RxJava中找不到等价项 我找到了一份工作,但里面有很多锅炉铭牌代码 private boolean isGettingCompanies = false; public boolean isGettingCompanies() { return isGettingCompanies; } private void setIsGettingCompanies(b

我从RxJava开始,我想创建一个可以保存最后一个状态的可观察对象

在RxSwift中,这将是Variable(),但我在RxJava中找不到等价项

我找到了一份工作,但里面有很多锅炉铭牌代码

private boolean isGettingCompanies = false;

public boolean isGettingCompanies() {
    return isGettingCompanies;
}

private void setIsGettingCompanies(boolean isGettingCompanies) {
    this.isGettingCompanies = isGettingCompanies;
    isGettingCompaniesPublishSubject.onNext(isGettingCompanies);
}

private final PublishSubject<Boolean> isGettingCompaniesPublishSubject = PublishSubject.create();

public Observable<Boolean> isGettingCompaniesPublishSubject() {
    return isGettingCompaniesPublishSubject.asObservable();
}
你能帮我吗?感谢

BehaviorSubject有一个value()方法返回它的当前值

final BehaviorSubject<Boolean> subject = BehaviorSubject.<Boolean>create(false);
final Boolean value = subject.getValue();
final BehaviorSubject subject=BehaviorSubject.create(false);
最终布尔值=subject.getValue();

非常感谢,这正是我想要的:)如果你允许我再问一个问题。有没有办法订阅此BehaviorSubject、接收其最后一个值和继续接收下一个事件?您可以使用replay操作符(容量设置为1)。
final BehaviorSubject<Boolean> subject = BehaviorSubject.<Boolean>create(false);
final Boolean value = subject.getValue();