У меня есть строка, которую мне нужно преобразовать в карту.В строке есть две метки времени, поэтому эти значения должны быть сохранены как метка времени, а другие значения должны быть сохранены как строка.В настоящее время я использую две карты, а затем объединяю значения этих карт в новую карту, как показано ниже.Я хотел бы знать, если есть способ сделать это, используя одну карту.
String paramsValues = reportGenerationSchedules.get(0).getReport_parameters();
paramsValues = paramsValues.substring(1,paramsValues.length()-1);
Map<String, Object> reportGenerationParams1 = Arrays.asList(paramsValues.split(",")).stream()
.filter(x -> x.toString().split("=")[0].contains("Date"))
.collect(Collectors.toMap(x -> x.toString().split("=")[0],
x -> Timestamp.valueOf(x.toString().split("=")[1])));
Map<String, Object> reportGenerationParams2 = Arrays.asList(paramsValues.split(",")).stream()
.collect(Collectors.toMap(x -> x.toString().split("=")[0],
x -> x.toString().split("=")[1]));
Map<String, Object> params = new HashMap<String,Object>();
params.putAll(reportGenerationParams2);
params.putAll(reportGenerationParams1);