Я пытаюсь изменить Hashmap.
«Значение» - это отдельная строка, состоящая из значений, разделенных запятыми.
(например: «помощь = abc, bid = def, cid = gh2»)
Мне нужно заменить определенные значения из них на соответствующее значение из БД.
(например, изменение ставки на 123, что приведет к приведенной выше строке 'value' в виде: "aid = abc, bid = 123, cid = gh2")
А затем установите измененное «значение» на соответствующий ключ, чтобы хэш-карта состояла из измененных значений.
Я пытался перебирать ключи, и с картой (ключом), которая даст значение, я пытался преобразовать это в список значений, разделенных запятыми, а затем перебирать этот список и в каждой строке, если Я нахожу 'bid' (пример строки выше), затем я делаю необходимые манипуляции и затем возвращаю его обратно в Hashmap (что я не смог сделать, так как строки не изменяемы)
для (имя строки: outputMap.keySet ())
List urlList = Arrays.asList (outputMap.get (name) .split (",")); для (int i = 0; i
ожидаемый результат: "aid = abc, bid = 123, cid = gh2" (после манипуляции)
фактический результат: невозможно сделать.
Я использовал Stringbuffer для проблем, где нужно было изменить строку, но немного опасался использовать это здесь, так как здесь уже происходит несколько преобразований.
Код должен соответствовать Java 7, поскольку он развертывается на клиентском компьютере, все еще использующем некоторую устаревшую среду (их планируется перенести на Java 8, но это запланировано гораздо позже)
Любая помощь здесь будет оценена.