인프런 커뮤니티 질문&답변

권정익님의 프로필 이미지
권정익

작성한 질문수

김영한의 실전 자바 - 중급 2편

섹션 10. Collections

작성

·

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()로 생성을 했을 때는, 그 순서가 실행 할 때마다 달라져있습니다. 랜덤으로 돌린 것처럼...

왜 매번 입력되는 값의 순서가 달라지는 건가요ㅠㅠ

답변 1

1

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. 권정익님

도움을 드리고 싶지만 질문 내용만으로는 답변을 드리기 어렵습니다.

실제 동작하는 전체 프로젝트를 압축해서 구글 드라이브로 공유해서 링크를 남겨주세요.

구글 드라이브 업로드 방법은 다음을 참고해주세요.

https://bit.ly/3fX6ygx

주의: 업로드시 링크에 있는 권한 문제 꼭 확인해주세요

추가로 다음 내용도 코멘트 부탁드립니다.

1. 문제 영역을 실행할 수 있는 방법

2. 문제가 어떻게 나타나는지에 대한 상세한 설명

 

링크: 공식 서포터즈

링크: 자주하는 질문

감사합니다.

권정익님의 프로필 이미지
권정익
질문자

다시 한 번 복습해보면서 고민해보고 해결이 안 되면 다시 질문드리겠습니다!!

권정익님의 프로필 이미지
권정익

작성한 질문수

질문하기