我必須將Guava Multiset<String>
轉換爲Map<String, Integer>
(Key,Count)。將Multiset轉換爲地圖
我找不到任何實用功能。有沒有什麼比我的代碼短呢?
private static Map<String, Integer> multisetToMap(final Multiset<String> multiset) {
Map<String, Integer> result = new HashMap<>();
for(String element: multiset.elementSet()) {
result.put(element, multiset.count(element));
}
return ImmutableMap.copyOf(result);
}
在http://codereview.stackexchange.com/上發佈這可能會更好。一種觀察是使用'ImmutableMap.Builder'而不是填充'HashMap'然後複製它。 –
@PaulBellora'''Collections.unmodifiableMap()'''也是一個選項。 –