С LinkedHashMap , когда я пытаюсь повторно вставить тот же ключ с другим значением, он заменяет значение и поддерживает порядок ключей, т.е. если я делаю это
Map<String,String> map = new LinkedHashMap<>();
map.put("a", "a");
map.put("b", "b");
map.put("c", "c");
map.put("d", "d");
map.values().stream().forEach(System.out::print);
Выход: abcd
Теперь, если я добавлю на карту другое значение с тем же ключом, порядок останется прежним, т.е.
map.put("b", "j");
map.values().stream().forEach(System.out::print);
Выход: ajcd
Есть ли другой способ? Одним из них является удаление и повторная вставка ключа с новым значением, которое выводит acdj
в качестве вывода. В моем случае я хочу сделать это для нескольких ключей на основе некоторого свойства объекта, используемого в качестве значения?
Было бы предпочтительнее использовать потоки.