java - HashMap의 indexFor(int h, int length)에 대한 의심
迷茫
迷茫 2017-05-17 09:59:13
0
1
679
으아악

HashMap은 키의 해시 값과 Entry[] 배열의 크기를 해시하여 Entry 배열의 아래 첨자 위치를 얻습니다. 디버깅 중에 두 개의 서로 다른 키(해시 값이 다름)가 있다는 것을 방금 알았습니다. indexFor를 통해 얻은 인덱스는 첨자가 동일하다. 즉, 서로 다른 키 값과 서로 다른 해시 값을 가진 두 개의 값이 서로 연결되어 연결 목록을 형성한다는 뜻이다. 예전에 다른 사람이 쓴 글을 읽었던 기억이 있는데, 그것들은 모두다. 해시 값은 동일하지만 키 값이 다르다고 합니다. 값은 연결 목록을 형성하지만 실제 디버깅에서는 다른 결과를 발견했습니다. 문제를 살펴보십시오.

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

모든 응답(1)
Ty80

으아아아

다른 객체는 동일한 hashCode를 가질 수 있습니다(hashCode 또는 같지가 아닌 한 결과적으로 달라야 함). > 정의가 잘못되었습니다.)
다른 hashCode는 동일한 색인을 가질 수 있으며(반대로 달라야 함) 연결 목록이 형성됩니다. Object可能有相同的hashCode(反过来一定不同,除非hashCodeequals定义错了);
不同的hashCode可能有相同的index(反过来一定不同),这时才会形成链表。

这里的hashCode可能跟你看到的某些文章的hash

여기서 hashCode는 여러분이 본 일부 기사의 hash와 동일한 의미를 갖지 않을 수 있습니다. #🎜🎜#
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!