작성
·
180
·
수정됨
0
Map<String, Integer> map = Map.of("a", 1, "b", 2, "c", 3, "ab", 4);
실행 결과
1번째 map = {a=1, b=2, c=3, ab=4}
2번째 map = {b=2, a=1, ab=4, c=3}
3번째 map = {ab=4, c=3, b=2, a=1}
4번째 map = {b=2, c=3, ab=4, a=1}
5번째 map = {b=2, a=1, ab=4, c=3}
Map은 순서를 보장하지 않고, 중복을 허용하지 않습니다. HashMap에서는 key값을 가지고 hashCode를 구하고 hashIndex에 값을 보관하기에 입력한 순서대로 저장하는 것을 보장할 수 없습니다.
그런데 map.of()로 생성을 했을 때는, 그 순서가 실행 할 때마다 달라져있습니다. 랜덤으로 돌린 것처럼...
왜 매번 입력되는 값의 순서가 달라지는 건가요ㅠㅠ
다시 한 번 복습해보면서 고민해보고 해결이 안 되면 다시 질문드리겠습니다!!