我有樹類ClassA
,ClassB
和ClassC
。 ClassA
和ClassB extends ClassC
。我已合併Multimap<ClassC
>並且我有不同類型的對象的Collection
。我想從Collection
得到這個對象,但如何區分這個對象?我創建了Collection<? super ClassC> coll = multimap.get(key)
,我希望使用trnasform
方法獲取此對象,但我不知道如何區分對象的類型。你能給我建議嗎?我感謝每一個幫助。番石榴:Iterables轉換方法的用法
回答
通過它的聲音,你實際上需要向下過濾收集到你想要的類型:使用重載Iterables.filter(Iterable<?> unfiltered, Class<T> type)
刪除與我原來的答覆任何類型的問題,從@EtienneNeveu
Collection<? super ClassC> coll = multimap.get(key);
Iterable<ClassA> classAs = Iterables.filter(coll, ClassA.class);
Iterable<ClassB> classBs = Iterables.filter(coll, ClassB.class);
更新。
非常感謝你的回答對我非常有用:) – Martin 2013-02-19 09:34:33
我想你想用超載'Iterables.filter(Iterable >未過濾,類
超級這好多了,已經更新了我的答案。 – 2013-02-20 08:42:29
- 1. 番石榴緩存asMap方法
- 2. 番石榴的ComparisonChain轉換爲JavaScript
- 3. 逆轉換番石榴預測
- 4. 番石榴 - 過濾和轉換圖
- 5. Floats.tryParse()番石榴
- 6. ClassNotFoundException的番石榴
- 7. 番石榴緩存魔法命中
- 8. 加法表番石榴和arraylist
- 9. 無法從番石榴Multimap之
- 10. 番石榴映射
- 11. 番石榴和javafx
- 12. 番石榴表ConcurrentModificationException
- 13. 番石榴資源
- 14. 番石榴入門
- 15. Java番石榴CartesianProduct
- 16. 番石榴功能
- 17. 番石榴和Weblogic:ClassNotFoundException
- 18. 方式使用番石榴緩存
- 19. 使用番石榴表
- 20. 番石榴散列用例
- 21. 如何利用番石榴
- 22. FileBackedOutputStream用例(番石榴)
- 23. 番石榴 - 地圖支持番石榴功能
- 24. 番石榴的HashBaseTable cellSet()
- 25. 子類番石榴的ImmutableSet
- 26. 番石榴:Throwables.propagate和InterruptedException的
- 27. 番石榴LoadingCache:內的CacheLoader
- 28. 番石榴的Sets.Intersection方法行爲不端
- 29. 番石榴是否支持xmemcached的[incr]方法?
- 30. 在番石榴交換節點MutableValueGraph
你是什麼意思的「區分」?你想要達到什麼目的?你的用例是什麼? – Xaerxess 2013-02-19 09:20:16