如果你只对Observable发射的最后一项数据,或者满足某个条件的最后一项数据感兴趣,你可以使用操作符。

    在某些实现中,Last没有实现为一个返回Observable的过滤操作符,而是实现为一个在当时就发射原始Observable指定数据项的阻塞函数。在这些实现中,如果你想要的是一个过滤操作符,最好使用TakeLast(1)

    在RxJava中的实现是lastlastOrDefault

    last

    只发射最后一项数据,使用没有参数的last操作符。

    示例代码

    输出

    这个版本的last也是接受一个谓词函数,返回一个发射原始Observable中满足条件的最后一项数据的Observable。

    • Javadoc: )

    lastOrDefaultlast类似,不同的是,如果原始Observable没有发射任何值,它发射你指定的默认值。

    last

    lastOrDefault默认不在任何特定的调度器上执行。