RxJava的window()函數(shù)和buffer()很像,但是它發(fā)射的是Observable而不是列表。下圖展示了window()如何緩存3個數(shù)據(jù)項并把它們作為一個新的Observable發(fā)射出去。
http://wiki.jikexueyuan.com/project/rxjava/images/chapter5_13.png" alt="" />
這些Observables中的每一個都發(fā)射原始Observable數(shù)據(jù)的一個子集,數(shù)量由count指定,最后發(fā)射一個onCompleted()結(jié)束。正如buffer()一樣,window()也有一個skip變體,如下圖所示:
http://wiki.jikexueyuan.com/project/rxjava/images/chapter5_14.png" alt="" />