Java 多层嵌套 Map 转换:使用 Function 映射值类型
/**
- 将多层嵌套的 Map 转换为另一种类型的 Map
- @param
第一层 Map 的值类型 - @param
转换后的 Map 的值类型 - @param computeResultNameGroup 待转换的多层嵌套的 Map
- @param valueMapper 转换函数,用于将第一层 Map 的值类型转换为目标类型
- @return 转换后的 Map
*/
public <T, V> Map<String, Map<String, V>> convertMultistageMapByFunction(
final Map<String, Map<String, List
>> computeResultNameGroup, final Function<? super Map.Entry<String, List >, ? extends V> valueMapper) { return computeResultNameGroup.entrySet().stream() .collect(Collectors.toMap( Map.Entry::getKey, e -> e.getValue().entrySet().stream() .collect(Collectors.toMap( Map.Entry::getKey, valueMapper, (o, n) -> o )), (o, n) -> o )); }
原文地址: https://www.cveoy.top/t/topic/qDDf 著作权归作者所有。请勿转载和采集!