0
我的目標是用一些隨機(預定義)延遲來模擬事件。我正在模擬RxJs中的事件如下:rxjs concatAll()在rxjava中相當於
var events = [
{id: 1, qty: 23, delayMs: 0},
{id: 1, qty: 231, delayMs: 3},
{id: 1, qty: 232, delayMs: 1},
{id: 1, qty: 233, delayMs: 2},
{id: 1, qty: 234, delayMs: 100},
{id: 1, qty: 235, delayMs: 50},
{id: 1, qty: 236, delayMs: 50},
{id: 1, qty: 237, delayMs: 50},
{id: 1, qty: 238, delayMs: 50},
{id: 1, qty: 239, delayMs: 50},
{id: 1, qty: 2310, delayMs: 50},
{id: 1, qty: 2311, delayMs: 50},
{id: 1, qty: 2312, delayMs: 100},
{id: 1, qty: 2313, delayMs: 50}
];
var rawEvents$ = O.from(events).map(o => O.return(o).delay(o.delayMs)).concatAll();
通過上面的代碼,我得到了預期的模擬事件流。我試圖在Java中實現它,但看起來像Java沒有concatAll()。我至今寫的代碼:),而不是concatAll
Observable rawEvents$ = Observable.concat(Observable.from(events).map(o -> Observable.just(o).delay(o.get("delayMs"), TimeUnit.MILLISECONDS)));
但是,因爲我用CONCAT((),我無法與指定延遲事件的輸出流。 java中concatAll()的等價物是什麼?