Q
番石榴映射
14
A
回答
23
Table
似乎非常適合您的需要。但請確保您選擇正確的實施。特別是,如果你的第二個鍵都是不同的(表中的列),結果表將會很稀疏,你應該考慮這個來管理內存使用情況。
所以你應該避免ArrayTable,但可以使用任何其他的實現。請注意,docs提到ImmutableTable
已經爲稀疏和密集的數據集優化了實現。
如果您的Table
是一次構建的,您可以使用ImmutableTable.Builder
並受益於此優化,並且如果表在多個線程之間共享,則可以簡化您的生活。
12
看看番石榴的Table
接口。
其documentation例子似乎相當多的重疊與用例:
通常情況下,當你在一個 時間試圖指數上有多個按鍵,你會風與像地圖<名字, 地圖<姓氏,人物> >,這是醜陋和尷尬的使用。 Guava 提供了一種新的集合類型Table,它支持任何「行」類型和「列」類型的此用例 。
相關問題
- 1. Spring MVC的映射番石榴Multimap之
- 2. Floats.tryParse()番石榴
- 3. 番石榴和javafx
- 4. 番石榴表ConcurrentModificationException
- 5. 番石榴資源
- 6. 番石榴入門
- 7. ClassNotFoundException的番石榴
- 8. Java番石榴CartesianProduct
- 9. 番石榴功能
- 10. 番石榴和Weblogic:ClassNotFoundException
- 11. 番石榴不同的多重映射值
- 12. 的Java:切片番石榴多重映射
- 13. 番石榴不可變映射生成器語法
- 14. 轉換番石榴多映射值變爲列表
- 15. 番石榴 - 地圖支持番石榴功能
- 16. 番石榴的HashBaseTable cellSet()
- 17. 不明白番石榴PrimitiveSink
- 18. 番石榴Multimap containsEntry問題
- 19. 使用番石榴表
- 20. 番石榴表替代
- 21. 遍歷表番石榴
- 22. 番石榴文件緩存
- 23. 番石榴:CharEscaper在哪裏?
- 24. 番石榴散列用例
- 25. 番石榴Multimap列表
- 26. 在谷歌番石榴loadingCache
- 27. 子類番石榴的ImmutableSet
- 28. 番石榴多集和Multipmap
- 29. 番石榴,Files.readLines()和空白
- 30. 如何利用番石榴
內部'Map'的外觀如何?那麼用適當的類替換它,那麼你會有一個'Map'來代替? –
@Philipp Reichart:那麼我的SomeObject需要有一個內部映射,所以我沒有看到我的代碼會變得如何簡單... – WannaKnow
這就是爲什麼我問內部映射的外觀如何:如果它們都具有相同的鍵例如''firstName「',''lastName」',...),你可以用一個類的實例替換它們,比如'Person {String firstName;字符串lastName; ''。如果每個內部地圖都不同,這當然是行不通的。 –