기존의 방법들보다 심플하긴 하지만 Immutable로 생성되기 때문에 이후에 값을 조작하기 어렵다는 점은 있습니다. 그리고 value에 null을 넣을 수 없습니다.
하지만 앞으로는 이런 방식이 대세가 되겠죠? Functional Programming이 점점 대중화되면서 Immutable 사용이 점점 더 선호되고 있습니다.
아 그리고 Map.of를 사용하면 개수 제한이 있습니다.
10개까지로 제한되어 있으니 주의하시기 바랍니다.
of 메서드를 확인해 보면 다음과 같이 파라미터가 하드 코딩되어 있습니다.
즉 개수를 늘리려면 더 만들어 주어야 합니다.
개수가 10개가 넘어가면 ofEntries를 사용하면 됩니다.
Map<String, Object> test = Map.ofEntries(
new AbstractMap.SimpleEntry<>("name", "Kim"),
new AbstractMap.SimpleEntry<>("nickname", "June Kim"),
new AbstractMap.SimpleEntry<>("a", "June Kim"),
new AbstractMap.SimpleEntry<>("b", "June Kim"),
new AbstractMap.SimpleEntry<>("c", "June Kim"),
new AbstractMap.SimpleEntry<>("d", "June Kim"),
new AbstractMap.SimpleEntry<>("e", "June Kim"),
new AbstractMap.SimpleEntry<>("f", "June Kim"),
new AbstractMap.SimpleEntry<>("g", "June Kim"),
new AbstractMap.SimpleEntry<>("h", "June Kim"),
new AbstractMap.SimpleEntry<>("i", "June Kim"),
new AbstractMap.SimpleEntry<>("j", "June Kim")
);