官术网_书友最值得收藏!

Observable.range()

To emit a consecutive range of integers, you can use Observable.range(). This will emit each number from a start value and increment each emission until the specified count is reached. These numbers are all passed through the onNext() event, followed by the  onComplete() event:

    import io.reactivex.Observable;

public class Launcher {
public static void main(String[] args) {
Observable.range(1,10)
.subscribe(s -> System.out.println("RECEIVED: " + s));

}
}

The output is as follows:

    RECEIVED: 1
RECEIVED: 2
RECEIVED: 3
RECEIVED: 4
RECEIVED: 5
RECEIVED: 6
RECEIVED: 7
RECEIVED: 8
RECEIVED: 9
RECEIVED: 10

Note closely that the two arguments for Observable.range() are not lower/upper bounds. The first argument is the starting value. The second argument is the total count of emissions, which will include both the initial value and incremented values. Try emitting Observable.range(5,10), and you will notice that it emits 5 followed by the next nine consecutive integers following it (for a grand total of 10 emissions):

    import io.reactivex.Observable;

public class Launcher {
public static void main(String[] args) {
Observable.range(5,10)
.subscribe(s -> System.out.println("RECEIVED: " + s));

}
}

The output is as follows:

    RECEIVED: 5
RECEIVED: 6
RECEIVED: 7
RECEIVED: 8
RECEIVED: 9
RECEIVED: 10
RECEIVED: 11
RECEIVED: 12
RECEIVED: 13
RECEIVED: 14
Note that there is also a long equivalent called Observable.rangeLong() if you need to emit larger numbers.
主站蜘蛛池模板: 乐业县| 闽清县| 法库县| 霍城县| 鹤庆县| 株洲市| 余干县| 五家渠市| 湄潭县| 柳州市| 镇江市| 庄浪县| 南部县| 上虞市| 尼玛县| 图们市| 桑植县| 昆明市| 沾益县| 八宿县| 施秉县| 黄浦区| 安丘市| 临武县| 岳池县| 武汉市| 百色市| 万载县| 韶山市| 苏尼特左旗| 定日县| 屏山县| 丹东市| 分宜县| 农安县| 滦南县| 买车| 卓尼县| 湛江市| 海林市| 长阳|