我找不到guava中将Collection(或Iterator / Iterable)转换为Map的方法,类似于以下内容(为了清晰起见省略了通配符):
有没有现成的方法可以实现这个功能?我找到的最接近的是Splitter.keyValueSplitter(),但只适用于T是字符串的情况。
public static <T, K, V> Map<K,V> collectionSplitter(Collection<T> source, Function<T,K> kProducer, Function<T,V> vProducer){
Map<K,V> map = Maps.newHashMap();
for(T t : source){
map.put(kProducer.apply(t), vProducer.apply(t));
}
return map;
}
有没有现成的方法可以实现这个功能?我找到的最接近的是Splitter.keyValueSplitter(),但只适用于T是字符串的情况。