扫描的工作方式如下(使用求和函数):
1-1-1-1-1-1 -> 1-2-3-4-5-6
但我需要这样的东西:用n=3
1-1-1-1-1-1 -> 3-3
我如何实现这种行为?
发布于 2015-07-30 15:44:11
在RxJ中,您可以使用bufferWithCount
var source = Rx.Observable.from([1,1,1,1,1,1])
.bufferWithCount(3)
.flatMap(group => Rx.Observable.from(group).sum());
您可以选择使用windowWithCount
,这样就不必为了使用sum
而重新包装输出,但也可以获得一个空的最终窗口,这将触发一个无关的0值。
发布于 2015-07-30 09:34:33
这在c#中是可行的:
var query =
new [] { 1, 1, 1, 1, 1, 1, }
.ToObservable()
.Buffer(3)
.Select(x => x.Sum());
我认为rxjs也会起类似的作用。
https://stackoverflow.com/questions/31719467
复制相似问题