본문 바로가기 메뉴 바로가기

JH-Labs

프로필사진
  • 글쓰기
  • 관리
  • 태그
  • 방명록
  • RSS

JH-Labs

검색하기 폼
  • 분류 전체보기 (119)
    • [ DevOps ] (35)
      • [ CI-CD ] (9)
      • [ k8s ] (20)
      • [ SRE ] (0)
      • [ Golang ] (6)
      • [ 아키텍처 ] (0)
    • [ 자격증 ] (7)
      • [ LFCS ] (4)
      • [ CCNA ] (0)
      • [ AWS ] (2)
      • [ CKA ] (1)
    • [ AI 활용 ] (0)
    • [ Basic ] (30)
      • # OS (6)
      • # 네트워크 (6)
      • # 데이터베이스 (11)
      • # 알고리즘 (7)
    • [ 백엔드 개발 ] (36)
      • [ Spring ] (18)
      • [ Java,Kotlin ] (18)
    • [ 트랜드 ] (2)
    • [ 트러블슈팅-개선 ] (5)
    • [ 생각정리 ] (2)
    • [ 맛보기 ] (2)
      • [ Kafka ] (2)
      • [ Redis ] (0)
  • 방명록

hashCode (1)
[java] HashMap 동작 과정, String의 해쉬 값

HashMap - HashTable과 다르게 쓰레드 동기화를 하지 않음(single-thread에서 유용) - 기본적으로 해쉬값을 반환하는 해쉬함스로써 hashCode()를 사용함 - hashCode()의 반환형은 int임 - int는 32비트(4Byte)이고 2^32개로 완벽한 해쉬값을 만들 수 없음(표현해야 할 key가 2^32개 보다 많을 경우) - HashMap은 O(1)을 보장하기 위해 random access가 가능하게 하려면 HashMap의 크기는 2^32개 여야 함 - 그래서 보통 2^32보다 작은 숫자 M을 이용해 해쉬값을 다음과 같이 다시 정의함 (int index = X.hashCode() % M) - 여기서 M은 2의 지수승 형태임. 즉, M이 2^a 형태라면 hashCode()의 ..

[ 백엔드 개발 ]/[ Java,Kotlin ] 2022. 1. 11. 17:34
이전 1 다음
이전 다음
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
  • GitHub
  • LinkedIn
TAG
  • RDB
  • spring
  • 컨트롤러
  • docker
  • github actions
  • 쿠버네티스
  • rolling update
  • 우분투
  • Non-Blocking
  • ci/cd
  • argocd
  • 카프카
  • Stream
  • LFCS
  • helm
  • kafka
  • db
  • Controller
  • CICD
  • golang
  • K8s
  • ubuntu
  • 코틀린
  • jvm
  • container
  • Kubernetes
  • Java
  • go
  • Linux
  • GitOps
more
«   2025/05   »
일 월 화 수 목 금 토
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
글 보관함

Blog is powered by Tistory / Designed by Tistory

티스토리툴바