У меня есть класс с именем ConfigKey
public class ConfigKey {
String code;
String key;
String value;
//omit setter and getter
}
Я хочу преобразовать List<ConfigKey>
в Map<String, Map<String, Object>>
, вот определение моего метода
public Map<String, Map<String, Object> convert (List<ConfigKey> list) {
return list.stream().collect(Collectors.groupingBy(ConfigKey::getCode,
Collectors.toMap(ConfigKey::getKey, ConfigKey::getValue)));
}
, но я хочу внесите некоторые изменения, для каждого ConfigKey
поместите другой ключ на карту, например,
{ "code": "code1","key", "key1", "value": "value1"}
to Map
{"code1": {"key1":"value1", "prefix_key1": "value1" }
есть ли какой-либо API, чтобы сделать это, как показано ниже:
public Map<String, Map<String, Object> convert (List<ConfigKey> list) {
return list.stream().collect(Collectors.groupingBy(ConfigKey::getCode,
Collectors.toMap("prefix_" + ConfigKey::getKey, ConfigKey::getValue))
Collectors.toMap(ConfigKey::getKey, ConfigKey::getValue)));
}