JAVA

JAVA에서 사용하는 Data Structure 알아보기 : HashMap편

pcoding1012 2024. 12. 17. 16:59

HashMap이란?

HashMap은 자바의 컬렉션 프레임워크의 일부로, Map 인터페이스를 구현한 클래스 중 하나입니다. Map은 키와 값을 한 쌍으로 하여 데이터를 저장하는 자료구조입니다. HashMap은 내부에서 해시 테이블을 사용하여 데이터를 저장하기 때문에, 키를 통해 데이터를 빠르게 찾을 수 있습니다.

 

 

HashMap의 특징

  • 키-값 쌍: HashMap은 키와 값을 한 쌍으로 저장합니다. 키는 고유해야 하며, 값은 중복될 수 있습니다.
  • 해시 테이블: 데이터를 저장할 때 해시 함수를 사용하여 키를 해시 코드로 변환하고, 이 해시 코드를 기반으로 데이터의 위치를 결정합니다.
  • 빠른 조회: 키를 통해 데이터를 찾을 때 해시 코드를 사용하기 때문에 조회 속도가 빠릅니다.
  • 동적 크기: 초기 용량을 지정할 수 있으며, 데이터가 추가되면 자동으로 크기가 증가합니다.

 

 

HashMap 선언 및 초기화

HashMap을 선언하고 초기화하는 방법은 다음과 같습니다.

 

 

예시 1

  • 초기 용량(initialCapacity)은 HashMap이 생성될 때 내부적으로 할당하는 배열의 크기입니다. 기본값은 16입니다.
  • 로드 팩터(loadFactor)는 HashMap의 확장 임계값입니다. 기본값은 0.75로, 이는 HashMap의 용량이 75%가 채워지면 크기를 확장한다는 의미입니다.

 

다른 맵의 값으로 초기화

 

예시 2

 

데이터 추가

HashMap에 데이터를 추가하는 방법은 다음과 같습니다.

 

 

예시 3

putIfAbsent 메서드는 키에 해당하는 값이 없을 때(key 자체가 없거나 key는 있지만 값이 null인 경우) 지정된 값을 넣는 메서드입니다.

 

 

데이터 조회

HashMap에서 데이터를 조회하는 방법은 다음과 같습니다.

 

 

예시 4

 

 

데이터 삭제

HashMap에서 데이터를 삭제하는 방법은 다음과 같습니다.

 

 

예시 5

 

 

데이터 탐색

HashMap의 데이터를 탐색하는 방법은 다음과 같습니다.

 

 

예시 6

 

예제 코드

다음은 HashMap을 사용하는 전체 예제 코드입니다.

 

 

예시 7

 

이 예제 코드를 통해 HashMap의 주요 메서드와 사용법을 이해할 수 있습니다.