- RxJava 教程
- RxJava - 主页
- RxJava - 概览
- RxJava - 环境设置
- 可观察对象
- RxJava - 可观察对象的工作原理
- RxJava - 创建可观察对象
- RxJava - 单一可观察对象
- RxJava - 可能的可观察对象
- RxJava - 可完成的可观察对象
- RxJava - 使用 CompositeDisposable
- 操作符
- RxJava - 创建操作符
- RxJava - 转换操作符
- RxJava - 过滤操作符
- RxJava - 组合操作符
- RxJava - 实用工具操作符
- RxJava - 条件操作符
- RxJava - 数学操作符
- RxJava - 可连接操作符
- 主题
- RxJava - 主题
- RxJava - PublishSubject
- RxJava - BehaviorSubject
- RxJava - ReplaySubject
- RxJava - AsyncSubject
- 调度程序
- RxJava - 调度程序
- RxJava - 跳板调度程序
- RxJava - 新线程调度程序
- RxJava - 计算调度程序
- RxJava - IO 调度程序
- RxJava - 所在调度程序
- 其他
- RxJava - 缓冲
- RxJava - 分窗
- RxJava 实用资源
- RxJava - 快速指南
- RxJava - 实用资源
- RxJava - 讨论
RxJava - ReplaySubject
ReplaySubject 重新播放事件/项目给当前和后来的观察者。
类声明
以下是 **io.reactivex.subjects.ReplaySubject<T>** 类的声明 -
public final class ReplaySubject<T> extends Subject<T>
ReplaySubject 示例
在任何编辑器中创建以下 Java 程序,例如,C:\> RxJava。
ObservableTester.java
import io.reactivex.subjects.ReplaySubject; public class ObservableTester { public static void main(String[] args) { final StringBuilder result1 = new StringBuilder(); final StringBuilder result2 = new StringBuilder(); ReplaySubject<String> subject = ReplaySubject.create(); subject.subscribe(value -> result1.append(value) ); subject.onNext("a"); subject.onNext("b"); subject.onNext("c"); subject.subscribe(value -> result2.append(value)); subject.onNext("d"); subject.onComplete(); //Output will be abcd System.out.println(result1); //Output will be abcd being ReplaySubject //as ReplaySubject emits all the items System.out.println(result2); } }
验证结果
使用 **javac** 编译器编译类,如下所示 -
C:\RxJava>javac ObservableTester.java
现在,运行 ObservableTester,如下所示 -
C:\RxJava>java ObservableTester
应该生成以下输出 -
abcd abcd
广告