我有一个重复元素的列表,说:
Observable<String> source = Observable.just("A", "B", "A", "C", "C", "A");
Run Code Online (Sandbox Code Playgroud)
我想根据它们的值以及它们出现的次数对它们进行分组,因此输出将是以下对:
{"A", 3}, {"B", 1}, {"C", 2}
Run Code Online (Sandbox Code Playgroud)
基本上相当于一个SQL语句 SELECT x, COUNT(1) GROUP BY x;
我到目前为止只打电话给groupBy:
source.groupBy(x -> x, x -> 1)
Run Code Online (Sandbox Code Playgroud)
但是这会将流转换为GroupedObservables,我找不到如何继续使用它们的好例子.我试过了reduce(),但这里并不好,因为groupBy()它想要减少GroupedObservables,而不是每个组内的元素.
这可能与GroupedObservables有关吗?有没有其他方法可以达到预期的效果?