public class List2MapUtils {
/**
* K: key class type, V: value class type
*
* @param sourceList
* @param keyName
* key property
* @param keyClass
* key Class type
* @return
*/
public static <K, V> Map<K, V> convert2Map(List<V> sourceList, String keyName, Class<K> keyClass) {
Map<K, V> map = new HashMap<K, V>();
if (sourceList == null || sourceList.isEmpty()) {
return map;
}
for (V value : sourceList) {
BeanWrapper beanWrapper = PropertyAccessorFactory.forBeanPropertyAccess(value);
beanWrapper.setAutoGrowNestedPaths(true);
K key = keyClass.cast(beanWrapper.getPropertyValue(keyName));
if (key == null) {
continue;
}
map.put(key, value);
}
return map;
}
}
List转换成Map工具类
最新推荐文章于 2024-08-16 09:30:00 发布
本文介绍了一种将列表转换为映射的实用工具方法。该方法接收一个泛型列表、键名和键类型作为参数,并返回一个Map对象,其中键由指定属性值构成。文章详细展示了如何使用Spring框架的BeanWrapper类进行属性访问。
摘要由CSDN通过智能技术生成