java - 将物品收集到 Guava Multimap
问题描述
我正在尝试将项目收集到最终的 Guava Multimap
。我注意到Flowable
有一个.toMultimap
,但我不知道如何使用它来返回我需要的东西。
这是一个片段
Single<Map<String, Collection<String>>> map = getActiveUsers().toFlowable() //
.flatMapIterable(users -> users) //
.map(User::getFullName) //
.distinct() //
.toMultimap(FullName::first, FullName::second);
如何更改此代码以返回 GuavaMultimap<String,String>
而不是Map<String,Collection<String>>
解决方案
使用collect
:
source.collect(
HashMultimap::create,
(mmap, item) -> mmap.put(item.first, item.second)
)
推荐阅读
- python - Python - 线程和执行时间
- android - 这个查询有问题吗?为什么它不起作用?
- haskell - 如何在 Haskell 中为 Foldable 编写 tailMay,而不使用不安全的函数?
- r - 融化()和铸造()
- google-oauth - 谷歌选择器的验证过程
- php - 如果 WordPress 页面 ID = 案例研究 ID,则不显示单个案例研究
- proxy - RestSharp for .Net Framework 如何使用直接连接(无代理)进行 RestRequest
- react-native - 在 react-native 中使用具有多个键的状态(多个声明,定义为对象,还是使用 reducer?)
- angular - 链接到 href 的角度数据绑定
- ios-charts - 删除 ios-charts 中的所有网格线