Collectors.toMap() feat. Map.Entry를 LinkedHashMap으로 변경하기
코드를 짜던 중 stream을 이용해 Map.Entry를 LinkedHashMap으로 변경해야 할 일이 있었다. 그래서 찾아본 내용 정리.

공식문서에서 가져온 내용이다.
toMap에는 크게 세 가지 종류가 있다.
toMap(keyMapper, valueMapper)
toMap(keyMapper, valueMapper, mergeFunction)
toMap(keyMapper, valueMapper, mergeFunction, mapFactory)
그 중 이번에 필요한 건 3번이다.
mergeFunction은 이름에서도 볼 수 있듯이 동일한 키를 추가로 삽입할 때 어떻게 처리할지 넣어주는 것.
testMap.entrySet().stream()
.collect(Collectors.toMap(Map.Entry::getKey, Entry::getValue, (e1, e2) -> e1, LinkedHashMap::new));
최종적으로 코드는 이런 형태로 넣었고, 잘 작동하는 것 같아 보인다.